创建unique约束与unique索引的区别
http://topic.youkuaiyun.com/t/20060515/17/4753282.html
Q:请问mssql2k中的创建unique约束与unique索引有啥区别:
我测试了这两种,两种都可以做到限制唯一值。而且选项"忽略重复键"不起作用的,选与不选效果都一样是可以限制唯一值。
请问大家这是什么原因?

A:功能上没有区别.
因为unique约束也是通过unique索引实现的.
唯一的区别在于建立和删除上:
索引是使用 create/drop index 创建和删除的
而约束是使用 alter table tb add constraint 建立,使用 drop constraint 删除.
忽略重复值这个选项设置上后,如果你插入的数据的值与现有值重复,则插入不会失败,而是自动跳过重复的这条记录的插入.
本文探讨了在MS SQL Server 2000中创建unique约束与unique索引的功能及用法区别。虽然两者都能限制字段值的唯一性,但它们在创建、删除方式上有所不同。unique约束通过ALTER TABLE ADD CONSTRAINT命令进行创建,并使用DROP CONSTRAINT命令进行删除;而unique索引则分别使用CREATE INDEX和DROP INDEX命令。此外,还讨论了如何通过设置选项来忽略重复键,使插入操作自动跳过重复记录。
1582

被折叠的 条评论
为什么被折叠?



