MySQL日期默認值的概述
在MySQL數據庫中,日期是一個常見的數據類型。日期表示了一天的時間,可以被用來記錄事件的日期。在建立數據庫表時,有時需要為日期這一數據類型指定默認值。本篇文章將介紹如何在MySQL數據庫中給日期字段指定默認值。
DATE類型的默認值
在MySQL中,DATE類型默認值可以通過設置為"YYYY-MM-DD"格式的字符串實現。例如,以下代碼將創建一個名為"orders"的表,其中包含一個名為"order_date"的字段,其默認值設置為當前日期:
CREATE TABLE orders ( id INT NOT NULL AUTO_INCREMENT, order_date DATE DEFAULT CURRENT_DATE, PRIMARY KEY (id) );
DATETIME類型的默認值
和DATE類型不同,MySQL的DATETIME數據類型無法像DATE那樣簡單地直接定義默認值。在MySQL數據庫中,以下三種方式可以為DATETIME類型字段指定默認值:
1. CURRENT_TIMESTAMP
當前時間戳是MySQL自動生成的時間戳,其格式為'YYYY-MM-DD HH:MM:SS'。要將DATETIME類型字段的默認值設置為當前時間戳,請將默認值設置為"CURRENT_TIMESTAMP"。
CREATE TABLE orders ( id INT NOT NULL AUTO_INCREMENT, order_date DATETIME DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id) );
2. NOW()
NOW()的作用與CURRENT_TIMESTAMP相同。如果想要將DATETIME類型字段的默認值設置為當前時間,請將默認值設置為"NOW()"。
CREATE TABLE orders ( id INT NOT NULL AUTO_INCREMENT, order_date DATETIME DEFAULT NOW(), PRIMARY KEY (id) );
3. 自定義時間戳字符串
如果您需要將DATETIME類型的默認值設置為自己定義的時間戳,請將默認值設置為您自己定義的格式為'YYYY-MM-DD HH:MM:SS'的字符串。
CREATE TABLE orders ( id INT NOT NULL AUTO_INCREMENT, order_date DATETIME DEFAULT '2021-08-01 12:00:00', PRIMARY KEY (id) );
總結
MySQL日期類型的默認值在建立數據庫表時非常有用。如果您需要指定一個默認值,無論是DATE還是DATETIME類型,都可以通過設置為'YYYY-MM-DD'或'YYYY-MM-DD HH:MM:SS'字符串來實現。