sql server 第七章.pptVIP

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 索引及其应用 学习目标 本章要点 上机练习 习 题 学习目标 索引对数据库的性能具有重要作用,通过索引可减少查询时间、提高查询效率。本章首先介绍了索引的概念,数据的存储方式。然后介绍了索引的分类及如何实施部分详细讨论了创建、查看和删除索引的方法。学习完本章后,要求掌握索引的基本概念和基本操作,并能结合实际灵活应用。 本章要点 索引概述 索引的创建 索 引 概 述 索引是SQL Server中数据访问的一种方式,本节将介绍索引的特点及其分类。 SQL Server中数据的存储与访问 索引的特点 索引的分类 SQL Server中数据的存储与访问 理解数据的存储方式是理解SQL Server如何访问数据的基础。 数据的存储方法 数据的访问方法 数据的存储方法 数据的存储方法有以下几种。 数据行存储在数据页中。 堆是一个表所有数据页的集成。 每个数据页包括8KB 信息,8个邻近的页称为一个扩展盘区。 数据的存储方法 数据行的存储是无序的,数据页也是无序的。 数据页并不是通过链表连接。 当行插入满的页的时候,数据页要拆分。 数据的访问方法 SQL Server使用以下两种方法来访问数据。 1)扫描表中所有的数据页——表扫描 表扫描的方法有以下几种。 从表的起点开始扫描。 数据的访问方法 对表中的所有行从头到尾扫描所有行。 提取满足查询条件的行。 2)使用指向页上数据的索引 当使用索引时,系统会进行下列操作。 遍历索引树结构,找到查询所请求的列。 只提取符合查询标准的列。 索引的特点 索引与书的目录很相似,表中的数据类似于书的内容。我们在看书的时候,总是通过书的页号来查看书的内容而不必翻遍书中的每一页。同样,在数据库中,索引记录了表中的关键值和指向表中相应行的指针,并按照关键值排序。 索引的特点 在查询数据时,首先在索引表中查询索引值,再根据索引的指针查询到表的结果。如果表中没有索引,则查询时系统从头开始进行物理扫描,直到扫描到所需的结果为止。当在表中建立了索引后,查询时不是在表中逐行扫描,而是在索引表中搜索,提高了查询速度。 索引的分类 SQL Server 2000 中的索引有两类:聚集索引(Cluster Index)和非聚集索引(Non- Cluster Index)。这两种形式的索引具有不同的物理存储结构。 聚集索引 非聚集索引 惟一索引 聚集索引 聚集索引是一种指明表数据物理存储顺序的索引。在聚集索引中,行的物理存储顺序与索引顺序完全相同,即索引的顺序决定了表中行的存储顺序。表数据按照聚集索引的一个或多个键列排序并存储。聚集索引类似于一本字典,字典中的正文按照字母顺序排列,与字典的索引顺序一致。 聚集索引 聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。 非聚集索引 非聚集索引与聚集索引不同,非聚集索引中的顺序并不等同于表中行的物理顺序。索引仅仅记录指向表中行的位置的指针,这些指针本身是有序的,通过这些指针可以在表中快速地定位数据。 惟一索引 惟一索引可以确保索引列不包含重复的值。在多列惟一索引的情况下,该索引可以确保索引列中每个值组合都是惟一的。例如,如果在last_name、first_name和middle_initial 列的组合上创建了惟一索引full_name,则该表中任何两个人都不可以具有相同的全名。 惟一索引 聚集索引和非聚集索引都可以是惟一的。因此,只要列中的数据是惟一的,就可以在同一个表上创建一个惟一的聚集索引和多个惟一的非聚集索引。 创建PRIMARY KEY或UNIQUE约束会在表中指定的列上自动创建惟一索引。 索引的创建 索引能加快检索速度以及是否可以为表中所有列都建立索引,答案是否定的。因为,建立索引虽加快了检索速度,却减慢了数据修改速度。因为每当执行一次数据修改,系统要维护索引,修改的数据越多,维护索引的开销也就越大。 索引的创建 所以,在修改数据时,对建立了索引的列执行修改操作要比未建立索引的列执行修改操作所花的时间要长。 通常,在下列情况下需要为表的一列或多列建索引。 索引的创建 主键:一般而言,存取表的最常用的方法是通过主键来进行。因此,我们应该在主键上建立索引。 外键:在表连接时,通常靠外键进行。若为外键建立了索引,系统可以很快执行连接。 索引的创建 频繁作查询条件的列。 在ORDER BY中经常使用的列。 值是惟一的列。 索引的创建 在下列情况下,不考虑建立索引。 很少在查询条件中出现的列。 列的取值范围很小或包含太多重复值。如性别,取值只能是男或女。 表中的数据很少。 索引的创建 使用CREATE INDEX创建索引 使用企业管理器

您可能关注的文档

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档