Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

สร้างคอลัมน์ที่ Allow NULL แต่ Default เป็น Empty String ใน MySQL

ใช้ NULL DEFAULT '' ในการเพิ่มคอลัมน์ เพื่อให้รับ NULL ได้ แต่ Default เป็น Empty String

ไวยากรณ์

ALTER TABLE yourTableName ADD yourColumnName yourDataType NULL DEFAULT '';

ตัวอย่างการใช้งาน

สร้างตาราง:

mysql> create table AllowNullDefaulNotNullDemo (
    -> Id int NOT NULL AUTO_INCREMENT,
    -> UserName varchar(20),
    -> PRIMARY KEY(Id)
    -> );
Query OK, 0 rows affected (0.65 sec)

เพิ่มคอลัมน์ UserAddress:

mysql> ALTER TABLE AllowNullDefaulNotNullDemo ADD UserAddress varchar(20) NULL DEFAULT '';
Query OK, 0 rows affected (1.04 sec)

ตรวจสอบโครงสร้าง:

mysql> DESC AllowNullDefaulNotNullDemo;
+-------------+-------------+------+-----+---------+----------------+
| Field       | Type        | Null | Key | Default | Extra          |
+-------------+-------------+------+-----+---------+----------------+
| Id          | int(11)     | NO   | PRI | NULL    | auto_increment |
| UserName    | varchar(20) | YES  |     | NULL    |                |
| UserAddress | varchar(20) | YES  |     |         |                |
+-------------+-------------+------+-----+---------+----------------+

คอลัมน์ Default แสดงว่าง (Empty String) และ Null = YES

ทดสอบ Insert:

mysql> INSERT INTO AllowNullDefaulNotNullDemo(UserAddress) VALUES ('US');
mysql> INSERT INTO AllowNullDefaulNotNullDemo(UserAddress) VALUES (NULL);
mysql> INSERT INTO AllowNullDefaulNotNullDemo() VALUES ();

ผลลัพธ์:

+-------------+
| UserAddress |
+-------------+
| US          |
| NULL        |
|             |
+-------------+

แถวที่ 3 ไม่ระบุค่า จึงได้ Empty String ('') ตาม Default