- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章索引及其应用.ppt
SQL Server 数据库应用技术 张蒲生 何升 编著 * 第5章 索引及其应用 5.1 索引的基础知识 5.2 创建索引 5.3 索引统计 5.4 查看与删除索引 5.1.1 数据存储 5.1.2 索引 5.1.3 索引的分类 5.1 索引的基础知识 在没有建立索引的表内,使用堆的集合的方法组织数据页。在堆集中,数据行不按任何顺序进行存储,数据页序列也没有任何特殊顺序。因此扫描这些数据堆集花费的时间肯定较长。在建有索引的表内,数据行基于索引的键值按顺序存放,将改善系统查询数据的速度。 5.1.1 数据存储 索引是一个表中所包含的值的列表,它说明了表中包含各个值的行所在的存储位置。 创建索引和维护索引会耗费时间,当对表中的数据进行增加、删除和修改的时,索引需要进行维护,否则索引的作用就会下降;每个索引都会占用一定的物理空间,如果占有的物理空间过多,就会影响到整个SQL Server系统的性能。 5.1.2 索引 聚集索引(Clustered Index),表格中的数据会以索引字段作为排序根据,表中数据行的物理存储顺序与索引顺序完全相同。 非聚集索引(Nonclustered Index),不改变表中数据行的物理存储顺序,数据与索引分开存储。 5.1.3 索引的分类 5.2 创建索引 5.2.1 使用企业管理器创建索引 5.2.2 使用Transact-SQL创建索引 5.2.3 索引的分析与维护 5.2.1使用企业管理器创建索引 直接创建索引:在企业管理器中,选择要创建索引的表右击,在弹出的菜单中选择“所有任务”下的“管理索引”,单击“管理索引”对话框中的“新建,打开“新建索引”对话框,在“索引名称”文本框中输入所要创建的索引名称,并在输入框下面的表中各列的列表中选择需要创建索引的列。接下来,对“索引选项”进行设置,用户只需要选择各复选按钮即可方便的设置各索引选项,如是否设置唯一索引等。点击“确定”完成索引创建。 5.2.1使用企业管理器创建索引 利用索引向导创建索引:在企业管理器中,从“工具”菜单中选择“向导”命令,打开“选择向导”对话框,单击“数据库”左边的加号,选择“创建索引向导”,单击“确定”,打开“欢迎使用创建索引向导”对话框,单击“下一步”,打开“选择数据库和表”对话框,从数据库名称下拉列表框中选择数据库,从对象名中选择表,单击“下一步”,打开“当前索引信息”窗口,窗口中显示了目前已存在的索引; 5.2.1 使用企业管理器创建索引 接上:单击“下一步”,打开“选择列”对话框,从中选择需要建索引的列,单击“下一步”,打开“指定索引选项”对话框,在这里设置索引的属性,可以设置聚集索引或唯一索引,还可设置填充因子,指定索引选项后,单击“下一步”,出现“创建完成”对话框。在其“名称”文本框中为新建索引指定一个名称,然后单击“完成”。出现消息提示“创建索引成功”时,单击“确定”,完成索引创建。 5.2.2 使用Transact-SQL创建索引 CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON {table | view }(column[ASC | DESC] [ ,...n ] ) [WITH [PAD_INDEX] [[,]FILLFACTOR = fillfactor] [[,]IGNORE_DUP_KEY] [[,]DROP_EXISTING] [[,]STATISTICS_NORECOMPUTE] [[,]SORT_IN_TEMPDB] ][ON filegroup] 5.2.3 索引的分析与维护 SHOWPLAN语句用来显示查询语句的执行信息,包含查询过程中连接表时所采取的每个步骤以及选择哪个索引。其语法格式为: SET SHOWPLAN_ALL {ON|OFF} SET SHOWPLAN_TEXT {ON|OFF} 5.2.3 索引的分析与维护 STATISTICS IO语句用来显示执行数据检索语句所花费的磁盘活动量信息,可以利用这些信息来确定是否重新设计索引。 其语法格式为: SET STATISTICS IO {ON|OFF} 5.2.3 索引的分析与维护 DBCC SHOWCONTIG语句用来显示指定表的数据和索引的碎片信息。当对表进行大量的修改或添加数据之后,应该执行此语句来查看有无碎片。其语法格式如下: DBCC SHOWCONTIG ([{table_name | table_id | view_name | view_id}, index_name | index_id ] ) 5.2.3 索引的分析与维护 DBCC DBREINDEX语句的作用是整理表中索引碎片,其语法格式为:
文档评论(0)