mysql 報錯[Err] [Dtf] 1292 - Incorrect datetime value: '0000-00-00 00:00:00' for column 'uploadtime' at row 9 With statement:......


最近用Navicat 往另一個數據庫傳數據的時候報錯了,具體報錯這個樣

 

 

 

 

 

搜索之后發現原來是因為 msyql5.7 及以上不允許時間戳字段插入 ‘0000-00-00’ 數據,修復方法也比較簡單,去掉sql_model 中的 NO_ZERO_DATE 配置即可

查看可以執行SQL

select @@global.sql_mode;

 

 

 

 

修改方法有好幾個,

最簡單的就是執行SQL

set @@global.sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

 

還有一個修改配置文件

vim /etc/my.cf
//添加這條數據
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

保存退出后重啟mysql

service mysql restart

 


免責聲明!

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



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