sql文件導入數據庫是,出現 Invalid default value for 'create_date' 時解決方式


情況一:

先分析下出現該問題的原因,我出現是因為sql文件中,該字段的格式為“ datetime NOT NULL DEFAULT '0000-00-00 00:00:00' ”

因為目前新版本的mysql數據庫默認已經不支持時間為0的格式,所以可以考慮批量修改sql文件中sql語句格式,如果修改比較麻煩且數據量大,需要保持數據格式,也可以采用下面的方法(前提是有修改mysql配置文件權限):

可以通過修改數據庫配置文件,設置在[mysqld] 下,設置  sql-mode = "STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 【親測有效】。

通過調整收數據庫默認配置,不支持格式為0的形式,保證數據導入正常。參考網址:https://blog.csdn.net/weixin_34318956/article/details/91634777

 

情況二:

查看sql文件,發現字段形式為:

`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間' ,這個問題的發生,是因為自己導入的mysql版本< 5.6。由於低版本的mysql數據庫不支持 CURRENT_TIMESTAMP 屬性,所以可以直接替換為 ,下面語句

`create_time` datetime DEFAULT NULL COMMENT '創建時間'  

或升級mysql數據庫版本,已達到正常導入數據

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM