MYSQL TIMESTAMP自動更新問題

某張表格裏有2個TIMESTAMP類型,time1、time2;建表時time1默認NOT NULL ,time2默認NULL;

之後出現了問題:當只修改time2字段,不操作time1時;time1隨着更新成了修改time2的時間;

之後使用DataGrip---》DDL查看該表的sql語句發現:之前建表時,time1字段後面默認加上了

ON UPDATE CURRENT_TIMESTAMP

導致了每次修改字段時time1都會自動更新;

原因是:mysql 的 timestamp字段的默認值,如果想爲NULL,必須設置爲 0000-00-00 00:00:00,否者都會自動變爲 CURRENT_TIMESTAMP 

解決的辦法是建表時給它加上default '0000-00-00 00:00:00';

這樣TIMESTAMP類型的字段就不會變成ON UPDATE CURRENT_TIMESTAMP;

問題解決;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章