''
dan null
tidak sama. jika server mysql Anda dalam mode ketat, maka itu akan menolak untuk melakukan penyisipan karena Anda telah mengirimkan data yang tidak valid untuk kolom tersebut. tanpa mode ketat, ia mengembalikan peringatan.
mysql> create table a (a float not null);
Query OK, 0 rows affected (0.11 sec)
mysql> insert a values ('');
Query OK, 1 row affected, 1 warning (0.05 sec)
mysql> show warnings;
+---------+------+----------------------------------------+
| Level | Code | Message |
+---------+------+----------------------------------------+
| Warning | 1265 | Data truncated for column 'a' at row 1 |
+---------+------+----------------------------------------+
1 row in set (0.00 sec)
mysql> set sql_mode = 'STRICT_ALL_TABLES';
Query OK, 0 rows affected (0.02 sec)
mysql> insert a values ('');
ERROR 1265 (01000): Data truncated for column 'a' at row 1
baik masukkan eksplisit null
s, atau bahkan tidak menentukan kolom di sisipan.
saat Anda memperbarui, Anda dapat mengirim semua nilai yang Anda miliki karena mysql akan secara otomatis mengabaikan nilai yang tidak diubah.