MySQL數(shù)據(jù)庫中,當(dāng)我們在創(chuàng)建表的過程中沒有設(shè)置某些字段的默認(rèn)值,那么它們將會被默認(rèn)填充為0。
CREATE TABLE test ( id INT PRIMARY KEY, num1 INT, num2 INT DEFAULT 100 ); INSERT INTO test (id, num1) VALUES (1, 20); SELECT * FROM test; /* id | num1 | num2 1 | 20 | 100 */
如上代碼所示,我們在創(chuàng)建test表的時候只為id和num1字段指定了數(shù)據(jù)類型,但沒有為num2指定默認(rèn)值。因此,當(dāng)我們插入一條數(shù)據(jù)時,num2的默認(rèn)值就自動被設(shè)置為了0。
CREATE TABLE test ( id INT PRIMARY KEY, num1 INT DEFAULT 0, num2 INT DEFAULT 0 ); INSERT INTO test (id, num1) VALUES (1, 20); SELECT * FROM test; /* id | num1 | num2 1 | 20 | 0 */
如果我們希望某個字段的默認(rèn)值不是0而是其他值,可以在創(chuàng)建表的時候?yàn)樵撟侄沃付J(rèn)值。如上代碼所示,我們在創(chuàng)建test表的時候?yàn)閚um1和num2字段都指定了默認(rèn)值為0,那么當(dāng)我們插入一條數(shù)據(jù)時,這兩個字段的默認(rèn)值就都是0。