SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt

SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt

ID:50026835

大小:217.00 KB

页数:22页

时间:2020-03-07

SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt_第1页
SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt_第2页
SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt_第3页
SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt_第4页
SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt_第5页
资源描述:

《SQL Server 2005实用教程 教学课件 蒋文沛2 第5章 索引.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第5章索引学习目标为什么要使用索引,索引的优点是什么;索引分类的依据是什么,了解各种索引的区别;掌握创建索引的2种方法,在创建索引的过程中如何设定其属性和参数;掌握删除和修改索引的方法;掌握分析与维护索引的方法。索引数据库管理系统通常使用索引技术加快对表中数据的检索。索引类似于图书的目录。目录允许用户不必翻阅整本图书就能根据页数迅速找到所需内容。在数据库中,索引也允许数据库应用程序迅速找到表中特定的数据,而不必扫描整个数据库。在图书中,目录是内容和相应页码的列表清单。在数据库中,索引是表中数据和相应存储位置的列表。索引在数据库的管理中,为了迅速地从庞大的数据库

2、中找到所需要的数据,提供了类似书籍目录作用的索引技术。通过在数据库中对表建立索引,可以大大加快数据的检索速度。在数据查询时,如果表的数据量很大且没有建立索引,SQLServer将从第一条记录开始,逐行扫描整个表,直到找到符合条件的数据行。这样,系统在查询上的开销将很大,且效率会很低。如果建立索引,SQLServer将根据索引的有序排列,通过高效的有序查找算法找到索引项,然后通过索引项直接定位数据,从而加快查找速度。1.索引的概念索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。它由某个表或视图中的一列或者若干列的值,以及这些值的记录在表中存储

3、位置的物理地址所组成。索引包含由表或视图中的一列或多列生成的键。这些键存储在一个结构中,使SQLServer可以快速有效地查找与键值关联的行。无索引的表如何扫描?演示:创建了两张堆结构的表(无索引的表)。setstatisticsio选项会打开一个特性,使SQLServer将语句执行期间I/O操作的有关信息发回给用户。这是一个用于判断查询I/O开销的极好特性。在执行之前按“Ctrl+M”或在“查询”菜单中选择“包括实际的执行计划”来包括实际的执行计划。然后执行两个查询:一个查询所有行,一个查询特定的一行数据。setstatisticsioon

4、off索引的分类

5、索引类别物理顺序数据排列创建个数聚集索引表中各行的物理顺序与索引中行的物理顺序是相同的数据完全重新排列创建主键时,自动创建每个表一个非聚集索引不相同数据不重新排列创建前要创建一个聚集索引每个表249个5.1建立索引使用SSMS图形工具使用createindex命令创建索引create[unique][clustered

6、nonclustered]index索引名on{表名

7、视图名}(列名[asc

8、desc][,…n])[with[pad_index][[,]fillfactor=填充因子值][[,]sort_in_tempdb][[,]statistics_n

9、orecompute][[,]drop_existing]][on文件组名]索引的优势:通过创建唯一性索引,可以保证每一行数据的唯一性;可以大大的加快数据的检索速度,这正是使用索引的最主要的原因;在使用orderby和groupby子句进行数据检索时,可以减少查询中分组和排序的时间;加速表与表之间的连接,特别是在实现数据库的参照完整性上很有意义;可以在检索数据的过程中提高系统性能。索引的限制也许会有人要问增加索引有如此多的优点,为什么不对表中的每一个列创建一个索引呢?虽然索引有许多优点,但是为表中的每一个列都增加索引是非常不明智的做法。这是因为增加索引也有其不

10、利的一面。创建索引和维护索引要耗费时间。索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间。如果要建立聚集索引,那么需要的空间就会更大。当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。建立索引应该遵循以下原则:在主键上创建索引;在经常需要检索的字段上创建索引;在外键上创建索引;在经常需要排序的列上创建索引。索引的分类_2索引类别唯一性创建唯一索引不能有重复的值(包括空值)创建唯一键时,自动创建非唯一索引可以重复索引类别字段个数单列索引对表中单个字段建立复合索引对表中的两个或两个以上的字段的组合

11、建立,最多可由16个字段组合全文索引及XML索引【例5.1】将Employees表中男员工的数据存为一个新表,命名为“男员工表”;在“男员工表”中按姓名创建一个唯一性聚集索引,并注意查看索引创建前后数据排序的变化。select*into男员工表fromemployeeswhere性别=1createuniqueclusteredindexi_姓名on男员工表(姓名)【例5.2】为employees表的“姓名”字段创建一个名为“i_姓名”的非聚集索引,使用降序排列,填充因子为30。语句如下:createindexi_姓名onemployees(姓名desc)wi

12、thfillfactor=30【例5.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。