在 MySQL 數據庫中,當我們創建新表時,可以為表中的列指定默認值。這個默認值可以是一個常量值,也可以是一個表達式。
在創建新表時,可以使用以下語法為列指定默認值:
CREATE TABLE table_name ( column_name1 data_type DEFAULT default_value, column_name2 data_type DEFAULT default_value, ... );
其中 column_name 表示列的名稱,data_type 表示列的數據類型,而 DEFAULT default_value 表示該列的默認值,其中 default_value 為列的默認值。
需要注意的是,如果我們為某列指定了默認值,那么如果在插入新行時沒有為這一列提供值,MySQL 將會自動將該列的默認值插入到該列中。
以下是一個簡單的示例,演示如何為 MySQL 數據庫表中的列指定默認值:
CREATE TABLE users ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, age INT DEFAULT 18, email VARCHAR(100) DEFAULT 'example@email.com', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
在這個例子中,我們創建了一個名為 users 的表,其中包含了五個列:id、name、age、email 和 created_at。其中,id 列是主鍵,name 列和 age 列都是 NOT NULL,email 列和 created_at 列都指定了默認值。
在這個例子中,age 列的默認值是 18,這意味著如果我們插入一行數據時沒有為 age 提供值,MySQL 將自動插入 18。
而 email 列指定的默認值是 example@email.com,這意味著如果我們插入一行數據時沒有為 email 提供值,MySQL 將自動插入這個默認值。
最后,created_at 列指定的默認值是 CURRENT_TIMESTAMP,這意味著如果我們插入一行數據時沒有為 created_at 提供值,MySQL 將自動將當前時間插入到這個列中。使用這個默認值可以確保我們的數據庫中的所有時間都使用相同的格式。