1. 程式人生 > 實用技巧 >mysql timeStamp 新增0000-00-00 00:00:00預設報錯

mysql timeStamp 新增0000-00-00 00:00:00預設報錯

踩坑記:mysql timeStamp預設值0000-00-00 00:00:00 報錯
報錯現象:
從mysql5.5資料庫匯出的資料結構放到mysql5.7.10 報錯
create_time timestamp NOT NULL DEFAULT ‘0000-00-00 00:00:00’
則會出現以下的異常:
Invalid default value for ‘create_time’

報錯原因以及解決辦法:
這個問題和mysql中sql_mode有關係,我們可以採用兩種方法來檢視它的值

http://www.cnblogs.com/wang666/p/9186559.html

不重啟mysql辦法:
先執行一下下面的語句

set sql_mode=(select replace(@@sql_mode,'NO_ZERO_IN_DATE,NO_ZERO_DATE',''));
然後重新執行新增欄位的sql即可:

ALTER TABLE 資料庫表名 ADD COLUMN end_time timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '更新時間'
AFTER ‘start_time’;

最好的方式還是上面連結中的方法:
去改mysql的配置檔案

作  者: Jony.K.Chen
出  處:http://www.cnblogs.com/lxcy/
版權宣告:本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連結。
特此宣告:所有評論和私信都會在第一時間回覆。也歡迎園子的大大們指正錯誤,共同進步。
聲援博主:如果您覺得文章對您有幫助,可以點選文章右下角【推薦】一下。您的鼓勵是作者堅持原創和持續寫作的最大動力!