การแสดงผลของสตริงว่าง (empty string) ในชุดผลลัพธ์ ขึ้นอยู่กับชนิดข้อมูลของคอลัมน์ เมื่อ INSERT สตริงว่างลงคอลัมน์ที่ประกาศ NOT NULL เรากำลังให้ค่าที่มีการแทนค่าเป็นจำนวนเต็ม 0 (INT 0)
หากคอลัมน์เป็นชนิด INTEGER MySQL จะแสดง 0 ในผลลัพธ์ เพราะสตริงว่างถูกแมปเป็นศูนย์ในรูปแบบจำนวนเต็ม
ตัวอย่าง: คอลัมน์ INTEGER
mysql> create table test(id int NOT NULL, Name Varchar(10));
Query OK, 0 rows affected (0.19 sec)
mysql> Insert into test(id, name) values('1', 'Gaurav'),('0','Rahul'),('','Aarav');
Query OK, 3 rows affected, 1 warning (0.08 sec)
Records: 3 Duplicates: 0 Warnings: 1
mysql> Select * from test;
+----+--------+
| id | Name |
+----+--------+
| 1 | Gaurav |
| 0 | Rahul |
| 0 | Aarav |
+----+--------+
3 rows in set (0.00 sec)
แถวที่สาม INSERT สตริงว่างสำหรับ id MySQL แสดงเป็น 0
แต่ถ้าคอลัมน์เป็น VARCHAR MySQL จะแสดงสตริงว่างในผลลัพธ์
ตัวอย่าง: คอลัมน์ VARCHAR
mysql> create table test123(id Varchar(10) NOT NULL, Name Varchar(10));
Query OK, 0 rows affected (0.19 sec)
mysql> Insert into test123(id, name) values('1', 'Gaurav'),('0','Rahul'),('','Aarav');
Query OK, 3 rows affected, 1 warning (0.08 sec)
Records: 3 Duplicates: 0 Warnings: 1
mysql> Select * from test123;
+----+--------+
| id | Name |
+----+--------+
| 1 | Gaurav |
| 0 | Rahul |
| | Aarav |
+----+--------+
3 rows in set (0.00 sec)
จากตัวอย่างเห็นว่าชนิดข้อมูลกำหนดการแสดงผลของสตริงว่างในคอลัมน์ NOT NULL