下面小編就為大家帶來一篇淺談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