SQL SERVER数据库 唯一索引 非唯一索引 聚集索引 非聚集索引 之间区别

如题所述

这里说的聚集索引是聚簇索引吧。。。
聚簇索引即建立在聚簇上的索引,创建聚簇索引时,需要对已有表数据重新进行排序(若表中已有数据),即删除原始的表数据后再将排序结果按物理顺序插回,故聚簇索引建立完毕后,建立聚簇索引的列中的数据已经全部按序排列。
一个表中只能包含一个聚簇索引,但该索引可以包含多个列。
B-树索引中,聚簇索引的叶层就是数据页。
非聚簇索引类似书本索引,索引与数据存放在不同的物理区域,建立非聚簇索引时数据本身不进行排序。一个表中科含多个非聚簇索引。
B-树索引中,非聚簇索引的叶层仍是索引页,其以指针指向数据页实际存储位置。
唯一性索引保证表中没有两行在定义索引的列上具有重复值,ORACLE自动为主键和唯一键列创建唯一索引;主键本身就是唯一索引,反之不成立(唯一索引允许一个NULL值),唯一性索引比非唯一性索引效率高,故在一般情况下,在无重复值的列上应尽量建立唯一性索引。
若为谋个表的某个列创建了唯一索引,则即使这个列没有唯一值约束,也会被强制限制不能插入重复记录。

这样回答LZ满意么?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-11
聚集索引:如果定义了一个聚集索引A,那么A的顺序就决定了这个表内记录的物理摆列顺序。
非聚集索引:索引排列顺序不影响表内记录的物理顺序。
聚集索引查询快,更新慢。但是不适合大量不同数据。非聚集索引则相反。
唯一索引:可以理解为在索引上加了一个唯一约束
相似回答