Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách chèn NULL vào cột CHAR(1) trong MySQL

Cần thiết lập sql_mode = 'STRICT_TRANS_TABLES' để cho phép chèn NULL vào cột CHAR(1) (mặc định có thể báo warning). Tạo bảng:

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Name VARCHAR(50),
    Gender CHAR(1) NULL
); Query OK, 0 rows affected (0.99 sec)

Bật chế độ strict và chèn NULL:

mysql> SET sql_mode = 'STRICT_TRANS_TABLES'; Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> INSERT INTO DemoTable(Name,Gender) SELECT 'Chris', NULL; Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO DemoTable(Name,Gender) SELECT 'David', NULL; Query OK, 1 row affected (0.16 sec)
mysql> INSERT INTO DemoTable(Name,Gender) SELECT 'Mike', 'M';    Query OK, 1 row affected (0.16 sec)

Hiển thị dữ liệu:

mysql> SELECT * FROM DemoTable;

Kết quả:

+----+-------+--------+
| Id | Name  | Gender |
+----+-------+--------+
| 1  | Chris | NULL   |
| 2  | David | NULL   |
| 3  | Mike  | M      |
+----+-------+--------+
3 rows in set (0.00 sec)

Lưu ý: Cột CHAR(1) NULL cho phép NULL. Nếu là CHAR(1) NOT NULL thì không chèn được NULL.