在 MySQL 中自動記錄時間戳
自動時間戳記錄是在資料庫中維護記錄時的常見要求。本文旨在解決如何設定 MySQL 在建立新記錄時自動儲存時間戳記的特定問題,確保時間戳記在後續更新時保持不變。
涉及的使用者嘗試的最初方法是使用時間戳記資料類型,預設值為 current_timestamp。然而,這種方法會導致每次修改記錄時都會更新時間戳,這不是我們想要的行為。
解決方案在於使用 DEFAULT 約束,僅在新記錄時將時間戳設定為目前時間記錄已插入。操作方法如下:
對於新表:
建立表格時,請包含以下語法:
CREATE TABLE ... your_date_column DATETIME DEFAULT CURRENT_TIMESTAMP ...
對於現有表:
如果表已經存在,則使用ALTER TABLE 語句:
ALTER TABLE your_table ALTER COLUMN date_column SET DEFAULT CURRENT_TIMESTAMP
使用此配置,指定列將自動接收當前時間戳,而無需受後續記錄更新的影響。
請記住,將 date_column 欄位留空將觸發使用預設值(目前時間戳記),而指定 NULL 或 DEFAULT 也會確保使用預設限制。但是,該列必須可為空,此方法才能有效運作。
以上是以下是一些標題選項,請記住問答格式: **的詳細內容。更多資訊請關注PHP中文網其他相關文章!