簡單介紹MySQL數據庫中日期中包含零值的問題

下面小編就為大家帶來一篇淺談mysql數據庫中日期中包含零值的問題。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

默認情況下MySQL是可以接受在日期中插入0值,對于現實來說日期中的0值又沒有什么意義。調整MySQL的sql_modemysql數據庫就能達到目的。

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

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享