我一直在使用以下內容更新我的 MySQL 表:
ALTER TABLE logs ADD COLUMN updateTimeStamp timestamp DEFAULT current_timestamp() ON UPDATE current_timestamp;
這以以下格式存盤時間戳
2021-12-29 15:21:34
我最初嘗試像這樣改變:
ALTER TABLE logs ADD COLUMN updateTimeStamp timestamp DEFAULT unix_timestamp() ON UPDATE unix_timestamp();
這樣可以像 12121232 一樣存盤,但這會導致錯誤。
無論如何我可以實作默認值和更新并以 1212112 的格式存盤時間戳,而不是人類可讀的日期時間?
我知道我可以做到SELECT unix_timestamt(columnname),但理想情況下我不想那樣做。
uj5u.com熱心網友回復:
如果要在選擇列時自動獲取整數,則需要將其設為int(或int unsigned) 型別。您可以設定其默認值default (unix_timestamp())(不使用歷史上允許的默認值之一時需要額外的括號)。您將需要添加一個觸發器以在更新時設定它。
但我建議你不要那樣做;只需使用時間戳型別。不使用用于存盤時間戳的型別,只會給自己帶來未來的麻煩。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/397711.html
