假设我在MySQL中有下表:
Page1
如果我这样插入:
create table test (
id int primary key auto_increment,
val enum ('A','B') not null default 'A'
);
将插入一行,并根据顺序设置INSERT INTO test () values ();
,并将id
设置为列的默认值val
:
A
但是,假设我有一些这样插入的代码:
mysql> SELECT * FROM test;
+----+------+
| id | val |
+----+-----+
| 1 | A |
+----+-----+
1 row in set (0.00 sec)
此操作失败
INSERT INTO test (val) values (NULL);
我的问题是这样:有没有办法让第二个查询插入默认值ERROR 1048 (23000): Column 'val' cannot be null
而不是失败并显示错误?