在使用MySQL創建數據庫時,建表是必不可少的一步。建表的過程中,我們可以對每一列數據類型的默認值進行設定,稱之為“缺省值”。
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` varchar(50) NOT NULL, `email` varchar(50) DEFAULT NULL, `created_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在上面的表結構中,我們設定了一列名為“email”的數據類型為varchar,并為其設定了一個缺省值DEFAULT NULL。這意味著,如果在插入一條數據時未對“email”列進行賦值,該列的數據將自動被設定為NULL。
除了使用NULL外,我們還可以為列的默認值指定其他的數據類型,比如數值、日期、時間等。
CREATE TABLE `product` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `price` decimal(10,2) NOT NULL DEFAULT '0.00', `created_time` datetime NOT NULL DEFAULT '1900-01-01 00:00:00', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在上面的表結構中,我們為“price”列設定了一個缺省值DEFAULT '0.00',代表如果未對該列進行賦值,則該列數值為0。而在為“created_time”列設定缺省值時,我們可以使用DATETIME類型,并設置了一個默認值'1900-01-01 00:00:00'。
通過合理地設定缺省值,可以降低系統的負擔,提升數據的處理效率。
上一篇css滑入滑出