>  기사  >  데이터 베이스  >  MySQL 데이터베이스의 날짜 값이 0인 문제에 대한 간략한 소개

MySQL 데이터베이스의 날짜 값이 0인 문제에 대한 간략한 소개

黄舟
黄舟원래의
2017-03-20 13:45:391310검색

다음 편집자는 MySQL 데이터베이스의 날짜 값이 0인 문제에 대해 간략하게 설명합니다. 에디터가 꽤 좋다고 생각해서 지금 공유해서 참고용으로 올려보겠습니다.

기본적으로 MySQL은 날짜에 0개의 값을 삽입하는 것을 허용합니다. 실제로 날짜에 0개의 값은 거의 의미가 없습니다. MySQL의 sql_mode 변수 를 조정하면 목표를 달성할 수 있습니다.

set @@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION';
set @@session.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION';

예:

로그인 테이블이 있습니다

create table app_logs(
id int not null auto_increment primary key,
log_tm timestamp not null,
log_info varchar(64) not null)
engine=innodb,charset=utf8;

삽입 로그 테이블에 흥미로운 날짜 값

insert into app_logs(log_tm,log_info) values(now(),'log_info_1');
insert into app_logs(log_tm,log_info) values('2016-12-01','log_info_2');

로그 테이블에 0을 포함하는 날짜 값 삽입

insert into app_logs(log_tm,log_info) values('2016-12-00','log_info_2');
ERROR 1292 (22007): Incorrect datetime value: '2016-12-00' for column 'log_tm' at row 1

위 내용은 MySQL 데이터베이스의 날짜 값이 0인 문제에 대한 간략한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.