mysql添加DATETIME類型字段導致Invalid default value錯誤的問題


執行sql如下:

CREATE TABLE `qcloud_sms_template` (
    `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
    `ctime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY(`id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

執行結果:

ERROR 1067 (42000): Invalid default value for 'ctime'

這段sql在本機測試沒問題,放到開發環境下就報錯了。
很奇怪,搜索一番后,發現DATETIME類型只支持mysql 5.6.5+.

解決方法:

    將DATETIME改為TIMESTAMP。

參考資料:
http://stackoverflow.com/questions/168736/how-do-you-set-a-default-value-for-a-mysql-datetime-column/10603198


免責聲明!

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



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