''
và null
không giống nhau. nếu máy chủ mysql của bạn ở chế độ nghiêm ngặt, thì nó sẽ từ chối thực hiện việc chèn vì bạn đã chuyển dữ liệu không hợp lệ cho cột. nếu không có chế độ nghiêm ngặt, nó sẽ trả về một cảnh báo.
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
hoặc chèn null
rõ ràng s, hoặc thậm chí không chỉ định cột trong phần chèn.
khi cập nhật, bạn có thể gửi tất cả các giá trị mà bạn có vì mysql sẽ tự động bỏ qua những giá trị không thay đổi.