MySQL中,int類型默認值是0,如果需要賦默認值為空,需要將其設置為NULL。
CREATE TABLE test ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(50) DEFAULT NULL, age INT(11) DEFAULT NULL, PRIMARY KEY (id) );
以上是創建一個名為test的表,在表中設置了三個字段,其中name和age都設置為了默認值為空。
當向該表插入數據時,可以不用為這兩個字段賦值,數據庫會自動將其賦為空值。
INSERT INTO test (name, age) VALUES ("John", NULL);
以上代碼就是向test表中插入一條數據,但只對name字段賦值,對age字段賦值為NULL。
如果不對int類型字段的默認值進行處理,在向該字段插入空值時,數據庫會自動將其賦值為0,可能會引起一些不必要的錯誤。
因此,對于需要賦默認值為空的int類型字段,應該在創建表時為其設置為NULL。