如何在 MySQL 中將 NULL 插入 char(1) 中?
為此,你需要將sql_mode設定為“STRICT_TRANS_TABLES”。這種模式會在插入無效值時發出警告,但會插入相同的值。我們先建立一個表:
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)
使用insert命令在表中插入一些記錄:
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) Records: 1 Duplicates: 0 Warnings: 0 mysql> insert into DemoTable(Name,Gender) select 'David',NULL ; Query OK, 1 row affected (0.16 sec) Records: 1 Duplicates: 0 Warnings: 0 mysql> insert into DemoTable(Name,Gender) select 'Mike','M' ; Query OK, 1 row affected (0.16 sec) Records: 1 Duplicates: 0 Warnings: 0
使用select語句顯示錶中的所有記錄:
mysql> select *from DemoTable;
這將產生以下輸出:
+----+-------+--------+ | Id | Name | Gender | +----+-------+--------+ | 1 | Chris | NULL | | 2 | David | NULL | | 3 | Mike | M | +----+-------+--------+ 3 rows in set (0.00 sec)
廣告