다음 편집자는 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!