唯一索引失败

Unique Index Fail

我为现有 table 的员工 ID 创建了一个唯一索引。我做了一个测试,输入一个已经保存在数据库中的员工ID,数据库仍然保存着。当我搜索该 ID 时,它会列出两条记录。

通过插入具有重复员工 ID 的记录来测试索引

CREATE INDEX empid_index ON staff (empId)

预期会出现 ID 重复的错误消息,但没有出现错误,记录仍被保存。

不要创建唯一索引:改为将 唯一约束 添加到 table。例如:

create table staff (
  ...
  constraint unique_empid unique (empid),
  ...
);

尽管唯一索引会阻止您插入具有该值的重复行,但您将缺少约束的其他功能,例如导出外键,您以后可能需要这些功能。