我为现有表的员工ID创建了唯一索引。我进行了测试,然后输入了已经保存在数据库中的员工ID,数据库仍然保存了它。当我在该ID上进行搜索时,它会列出两个记录。
通过插入具有重复员工ID的记录来测试索引
CREATE INDEX empid_index ON staff (empId)
预期出现错误的ID重复消息,但没有出现错误,记录仍被保存。
答案 0 :(得分:0)
不创建唯一索引:在表中添加唯一约束。例如:
create table staff (
...
constraint unique_empid unique (empid),
...
);
即使唯一索引将阻止您使用该值插入重复的行,但您将丢失约束的其他功能,例如导出外键,这些您以后可能需要。