首頁 >資料庫 >mysql教程 >如何在 MySQL 中設定 DATETIME 欄位的預設值?

如何在 MySQL 中設定 DATETIME 欄位的預設值?

Barbara Streisand
Barbara Streisand原創
2024-12-17 20:55:15606瀏覽

How to Set Default Values for DATETIME Columns in MySQL?

在MySQL 中設定日期時間列的預設值

在MySQL 中,為日期時間列設定預設值與SQL Server 的getdate () 不同函數。

5.6.5 之前的 MySQL 版本不允許 DATETIME 使用預設值欄位。但是,您可以使用TIMESTAMP 代替:

CREATE TABLE test (
  str VARCHAR(32),
  ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

插入一行而不指定時間戳將自動用當前時間填充它:

INSERT INTO test (str) VALUES ('demo');

注意:使用CURRENT_TIMESTAMP 作為預設值可能會導致更新期間出現意外行為。若要維護原始時間戳,您必須明確將此欄位設定為其目前值:

UPDATE test SET ts = ts;

MySQL 5.6.5 及更高版本

MySQL 5.6 .5 引入支援對於DATETIME欄位的預設值:

CREATE TABLE test2 (
  str VARCHAR(32),
  dt DATETIME DEFAULT '2000-01-01 00:00:00'
);

此方法優於使用 TIMESTAMP 設定預設值日期時間列的值。

以上是如何在 MySQL 中設定 DATETIME 欄位的預設值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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