首頁 >資料庫 >mysql教程 >MySQL 表現在可以有多個 CURRENT_TIMESTAMP 欄位嗎?

MySQL 表現在可以有多個 CURRENT_TIMESTAMP 欄位嗎?

Susan Sarandon
Susan Sarandon原創
2024-12-02 18:23:12446瀏覽

Can MySQL Tables Now Have Multiple CURRENT_TIMESTAMP Columns?

具有CURRENT_TIMESTAMP 的多個TIMESTAMP 欄位:歷史限制

在先前版本的MySQL 中,一項限制將表格自動限制為只有一個TIMESTAMP 欄位使用CURRENT_TIMESTAMP 子句初始化或更新為目前日期和時間。此限制擴展到 DEFAULT 和 ON UPDATE 子句。

MySQL 5.6.5 中放寬限制

MySQL 5.6.5 版本帶來了重大變化,解除了歷史限制。在此版本中,任何 TIMESTAMP 欄位都可以具有 DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP 子句的任意組合。

範例:

以下表格定義,之前引發了錯誤,現在從MySQL 開始有效5.6.5:

CREATE TABLE `foo` (
  `ProductID` INT(10) UNSIGNED NOT NULL,
  `AddedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `UpdatedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=INNODB;

注意:此變更也適用於DATETIME 欄位定義,它們現在支援相同的子句和組合。

以上是MySQL 表現在可以有多個 CURRENT_TIMESTAMP 欄位嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn