1.索引
索引是一个单独的、存储在磁盘上的数据库结构,它们包含着对数据表里所有记录的引用指针。使用索引便于快速找出在某个或多个列中有某一特定值的行,对相关列使用索引是降低查询操作时间的最佳途径。
如果没有索引,数据库需要遍历查询,当有了索引,SQL Server不需要任何扫描,可以直接找到目标位置。
索引的优点:
1.通过创建唯一索引,可以保证数据库表中每一行数据的唯一性。
2.可以大大加快数据的查询速度,这也是创建索引的主要原因。
3.实现数据的参照完整性,可以加速表和表之间的连接。
4.在使用分组和排序字句进行数据查询时,也可以显著减少查询中分组和排序的时间。
增加索引的缺点:
1.创建索引和维护索引需要耗费时间,并且随着数据量的增加所消耗的时间也会增加。
2.索引需要占用磁盘空间,除了数据表占用数据空间之外,每一个索引还要占用一定的物理空间,如果有大量的索引,索引文件可能比数据文件更快达到最大文件尺寸。
3.当对表中的数据进行增加、删除和修改的时候,索引也要动态地维护,这样就降低了数据的维护速度。
索引的分类
1.聚集索引
1.1每一个表只能有一个聚集索引,因为数据本身只能按一个顺序存储。
1.2表中的物理顺序和索引中行的物理顺序是相同,创建任何非聚集索引之前要首先创建聚集索引,因为非聚集索引改变了表中的物理顺序。
1.3关键值的唯一性使用UNIQUE关键字或者由内部的唯一识别符明确维护。
1.4在索