SQL Server唯一索引和非唯一索引的区别简析
答案:2 悬赏:60 手机版
解决时间 2021-12-31 21:29
- 提问者网友:皆是孤独
- 2021-12-30 22:16
SQL Server唯一索引和非唯一索引的区别简析
最佳答案
- 五星知识达人网友:怙棘
- 2021-12-30 23:55
这里说的聚集索引是聚簇索引吧。。。 聚簇索引即建立在聚簇上的索引,创建聚簇索引时,需要对已有表数据重新进行排序(若表中已有数据),即删除原始的表数据后再将排序结果按物理顺序插回,故聚簇索引建立完毕后,建立聚簇索引的列中的数据已经全部按序排列。 一个表中只能包含一个聚簇索引,但该索引可以包含多个列。 B-树索引中,聚簇索引的叶层就是数据页。 非聚簇索引类似书本索引,索引与数据存放在不同的物理区域,建立非聚簇索引时数据本身不进行排序。一个表中科含多个非聚簇索引。 B-树索引中,非聚簇索引的叶层仍是索引页,其以指针指向数据页实际存储位置。 唯一性索引保证表中没有两行在定义索引的列上具有重复值,ORACLE自动为主键和唯一键列创建唯一索引;主键本身就是唯一索引,反之不成立(唯一索引允许一个NULL值),唯一性索引比非唯一性索引效率高,故在一般情况下,在无重复值的列上应尽量建立唯一性索引。 若为谋个表的某个列创建了唯一索引,则即使这个列没有唯一值约束,也会被强制限制不能插入重复记录。
全部回答
- 1楼网友:上分大魔王
- 2021-12-31 00:17
聚集索引:如果定义了一个聚集索引a,那么a的顺序就决定了这个表内记录的物理摆列顺序。
非聚集索引:索引排列顺序不影响表内记录的物理顺序。
聚集索引查询快,更新慢。但是不适合大量不同数据。非聚集索引则相反。
唯一索引:可以理解为在索引上加了一个唯一约束
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯