本文通過實測截圖全面對比 MySQL 5.6.6 前後 TIMESTAMP 行為差異,並分析升級遷移中的兼容性陷阱。
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'0000-00-00 00:00:00'CURRENT_TIMESTAMP 默認值。

啟動報警告:[Warning] TIMESTAMP with implicit DEFAULT value is deprecated...
在 my.cnf 設置 explicit_defaults_for_timestamp=true 重啟後:
DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP。

explicit_defaults_for_timestamp=0(默認):兼容舊行為,但啟動報警告。explicit_defaults_for_timestamp=1:關閉隱式默認,行為標準化。DEFAULT / ON UPDATE 定義,彻底解脫對數據庫魔法行為的依賴。註:以上行為與存儲引擎無關。