欢迎来到天天文库
浏览记录
ID:44136594
大小:62.00 KB
页数:15页
时间:2019-10-19
《索引与数据完整性》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第5章索引与数据完整性在数据库的管理中,为了迅速地从庞大的数据库中找到所需要的数据,提供了类似书籍目录作用的索引技术。通过在数据库中对表建立索引,可以大大加快数据的检索速度。在数据查询时,如果表的数据量很大且没有建立索引,SQLServer将从第一条记录开始,逐行扫描整个表,直到找到符合条件的数据行。这样,在查询上的开销将很大,浪费宝贵的CPU时间,系统的效率会很低。如果建立索引,SQLServer将根据索引的有序排列,通过高效的有序查找算法找到索引项,然后通过索引项直接定位数据,从而加快查找速度。此外,本章还将介绍在数据库规划过程中很重要的一步——实现数据完整性的概念。SQLServe
2、r2000实用教程5.1索引5.1.1索引的概念1.索引的概念索引是一个单独的,物理的数据库结构。它由某个表中的一列或者若干列的值,以及这些值的记录在数据表中存储位置的物理地址所组成。当SQLServer进行数据查询时,查询优化器会自动计算现有的几种查询方案,通过方案的开销大小和速度快慢决定方案是否被执行。如果使用索引查找的速度不如直接扫描表格速度快时,SQLServer会使用直接扫描表格的方法。建立不能被SQLServer使用的索引会给系统增加负担,索引要占用存储空间,而且为了自动维护索引,在插入、删除或者更新数据的时候,SQLServer还要花费额外的操作来维护索引的有效性。SQLS
3、erver2000实用教程5.1索引2.索引的特点使用索引可以极大的改善数据库的性能,其表现在:··通过创建唯一性索引,可以保证每一行数据的唯一性··可以大大的加快数据的检索速度,这正是使用索引的最主要的原因··在使用ORDERBY和GROUPBY子句进行数据检索时,可以减少查询中分组和排序的时间··加速表与表之间的连接,特别是在实现数据库的参照完整性上很有意义··可以在检索数据的过程中提高系统性能SQLServer2000实用教程5.1索引但是,建立索引也会消耗硬盘空间并招致开销和维护成本。当在建立索引的列上修改数据时,SQLServer将会更新相关的索引,从而花费额外的时间和资源。因
4、此,不要创建不经常使用的索引,不要在含有大量重复数据的列上创建索引,也不要在定义为text、ntext或者image数据类型的列上创建索引。建立索引应该遵循以下原则:·在主键上创建索引·在经常需要检索的字段上创建索引·在外键上创建索引··在经常要排序的列上创建索引SQLServer2000实用教程5.1索引3.索引的分类从索引表的物理顺序、属性列的重复值以及索引列中所包含的列数等不同的角度,可以把索引分为以下几类:··聚集索引和非聚集索引··唯一索引和非唯一索引·单列索引和复合索引(1)聚集索引和非聚集索引P111根据索引的顺序与数据表的物理顺序是否相同,可以把索引分为聚集索引和非聚集索
5、引。(2)唯一索引和非唯一索引(3)单列索引和复合索引单列索引是对表中单个字段建立的索引,复合索引是对表中的两个或两个以上的字段的组合建立的索引。SQLServer2000实用教程5.1索引5.1.2索引的建立在SQLServer2000中,只有表或视图的拥有者才可以为表创建索引,即使表中没有数据也可以创建索引。创建索引有3种的方法:··使用企业管理器创建索引··使用向导创建索引··使用CREATEINDEX语句创建索引此外,当对表中的字段设置主键约束时,如果表中没有聚集索引,且主键约束未使用关键字NONCLUSTERED系统会自动创建一个唯一性索引SQLServer2000实用教程5.
6、1索引1.使用企业管理器创建索引P115使用企业管理器创建索引的操作步骤如下:(1)在企业管理器中展开指定的服务器和数据库,选择要创建索引的表,右击该表,从弹出的快捷菜单中依次选择“所有任务∣管理索引”。(2)进入“管理索引”对话框中。此对话框可以更改选择要建立索引的数据库和表,还可以对已经存在的索引进行编辑和删除操作。在现有索引区内显示的是现存索引的名称、是否聚集索引以及对应索引的列(3)单击“新建”按钮,在弹出的“新建索引”对话框中输入索引名称,如I_进货时间。在对话框中部的窗口内是可供选择的建立索引的字段,对所选的字段可以指定按升序或降序组织列值。此外,对话框内还可以设定索引的属性
7、,如是否聚集、是否唯一、指定填充因子和更改列顺序等SQLServer2000实用教程5.1索引(4)设置完成后单击“确定”按钮,返回“管理索引”对话框,在现有索引区内即可看到新建立的索引,单击“关闭”按钮,返回企业管理器。2.使用向导创建索引使用向导创建索引的操作步骤如下:(1)在企业管理器菜单栏中,选择“工具∣向导”,打开“选择向导”对话框,展开“数据库”选项,选择“创建索引向导”,单击“确定”按钮。2)进入“欢迎使用创建索引向导
此文档下载收益归作者所有