在 SQL Server 中,getdate() 函式設定日期時間列的預設值。 MySQL 為 MySQL 5.x 提供了另一種方法。
5.6.5 版本之前的 MySQL 不支援 DATETIME 欄位的預設值。但是,您可以使用 TIMESTAMP 資料類型:
CREATE TABLE test ( str VARCHAR(32), ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
這將建立一個帶有 ts 列的表,該列會在行插入時自動將預設值設為目前時間戳記。
在 MySQL 5.6.5 以上版本中,CURRENT_TIMESTAMP 關鍵字可用於分配預設值到 DATETIME列:
CREATE TABLE test ( str VARCHAR(32), dt DATETIME DEFAULT CURRENT_TIMESTAMP );
更新: 當對列使用 CURRENT_TIMESTAMP ON 時,它必須始終包含在 UPDATE 語句中。否則,列值將自動更新為目前時間戳記。
警告:在 MariaDB 5.5.56 中,在更新記錄時指定不帶值的 CURRENT_TIMESTAMP 也會將列值重設為目前時間戳記。
以上是如何為 MySQL 中的日期時間列設定預設值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!