1. 程式人生 > >mysql中timestamp欄位型別設定default/expression的注意事項

mysql中timestamp欄位型別設定default/expression的注意事項

  • DEFAULT CURRENT_TIMESTAMP
    插入新元組時自動將該值設為系統當前時間, 但以後對該元組update時不再更新該欄位
    但特地set該時間欄位為指定值時, 欄位值自然就會改變.
    CURRENT_TIMESTAMP一般用於資料庫規範的欄位例如 : insert_time, last_update_time, 一般不會手動更新這些欄位
    以下幾個預設值也是如此

  • ON UPDATE CURRENT_TIMESTAMP
    插入新元組時該值預設為null,
    只有在後續每次update該元組時, 該欄位才會自動設定為系統當前時間

  • DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP


    插入時和後續每次update該元組時, 該欄位都會自動設定為系統當前時間

  • DEFAULT 'yyyy-mm-dd hh:mm:ss' ON UPDATE CURRENT_TIMESTAMP
    插入時該欄位自動設定為指定的時間值
    後續每次update該元組時, 該欄位自動設定為系統當前時間
    注意 : 預設值不是’yyyy-mm-dd hh:mm:ss’, 必須是具體值, 例如 : ‘2012-12-21 23:59:59’