唯一约束检查​​未强制执行

时间:2010-12-21 06:09:00

标签: mysql h2

create table A (id, field1, field2, field3, field4)

我有一个unique constraint on field1, field2, field3,以下记录存储在表

e.g。

insert into A (1, "f1", null, "f3", "f4");
insert into A (2, "f1", null, "f3", "f4");
insert into A (3, "f1", null, "f3", "f4");

我希望这会抛出一个唯一的约束违规,因为所有记录都是违规的,但事实并非如此。我在这里缺少什么,检查数据库并创建了唯一约束索引。

1 个答案:

答案 0 :(得分:4)

Null值永远不会等于任何其他值,即使null也是如此。 null != null

这就是记录a + null + b永远不会重复记录a + null + b

的原因