mysql日期默認值格式('0000-00-00')錯誤解決


在執行下面 SQL 語句時發現報錯

`date` date NOT NULL DEFAULT '0000-00-00' COMMENT '注冊日期'

報的錯誤是時間的默認值有錯誤,查閱后發現 MySQL 5.7 版本開始有了一個 STRICT MODE(嚴格模式),此模式中對默認值做了一些限制。

解決方法就是修改 sql_mode

復制代碼
-- 查看當前
select @@sql_mode;

-- 去掉 NO_ZERO_IN_DATE 和 NO_ZERO_DATE
set @@sql_mode=(select replace(@@sql_mode,'NO_ZERO_IN_DATE,NO_ZERO_DATE','')); 

-- 查看全局
select @@global.sql_mode;

set @@global.sql_mode=(select replace(@@global.sql_mode,'NO_ZERO_IN_DATE,NO_ZERO_DATE',''));
復制代碼

設置完成后重新連接 MySQL 即可


免責聲明!

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



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