1. 程式人生 > >Incorrect datetime value: '0000-00-00 00:00:00' for column的解決

Incorrect datetime value: '0000-00-00 00:00:00' for column的解決

我的mysql安裝後,儲存刪除表資料總是出現#1929 Incorrect datetime value: '' for column 'createtime' 的報錯提醒,導致不能刪除表裡資料;

原因:

5以上的版本如果時期時間是空值應該要寫NULL;

官方解釋說:得知新版本mysql對空值插入有"bug",

要在安裝mysql的時候去除預設勾選的enable strict SQL mode

那麼如果我們安裝好了mysql怎麼辦了,解決辦法是更改mysql中的配置 my.ini

解決方法:

修改my.ini配置檔案,建議修改前新備份下,

my.ini中查詢sql-mode,

我的MySQL版本為5.7.9,預設為:

sql-mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER"

將紅色標註的NO_ZERO_DATE,NO_ZERO_IN_DATE,刪掉儲存重啟mysql即可;

如果版本低的話預設可能是:

預設為sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION",

將紅色標註的STRICT_TRANS_TABLES,刪掉儲存重啟mysql即可; ---------------------  作者:月光如注  來源:CSDN  原文:https://blog.csdn.net/leesin2011/article/details/54634693  版權宣告:本文為博主原創文章,轉載請附上博文連結!

////////////////////////////////////////////以下為原理////////////////////////////