第五講 索引.pptVIP

  1. 1、本文档共30页,可阅读全部内容。
  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文档。上传文档
查看更多
第五講 索引

第五讲 索引 教学内容 索引是数据库中常用而重要的数据库对象。 通过使用索引,可以大大提高数据库的检索速度,改善数据库性能。 本讲具体内容 索引的概念 索引的类型 索引的创建和管理方法 学习重点及目标 学习重点 索引的概念和作用 索引的类型 如何使用企业管理器创建和管理索引 如何使用T-SQL语句创建和管理索引 学习目标 掌握索引的概念和功能 结合实际,使用T-SQL合理创建索引 5.1 SQL Server的数据存储 SQL Server的数据访问 在一个表中扫描所有的数据页 数据页 Page 7 Page 4 Page 5 Page 6 Page N … 查找姓名为Ota的记录 Select FirstName From Member Where FirstName=‘Ota’ FirstName=Ota??? Ota SQL Server的数据访问 用指向数据页数据的索引 数据页 Page 7 Page 4 Page 5 Page 6 Page N … 查找姓名为Ota的记录,FirstName为聚集索引 Select FirstName From Member Where FirstName=‘Ota’ FirstName=Ota??? Ota Akhtar … Zoo 索引页 5.2 索引问题 数据库中的索引与书籍中的索引类似,在一本书中,利用索引可以快速查找所需信息,无须阅读整本书。 在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据。 书中的索引是一个词语列表,其中注明了包含各个词的页码 数据库中的索引是某个表中一列或者若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。 5.2.1 索引的概念 索引是对数据表中一个或多个字段的值进行排序的 结构。 表中的一个索引就是一个列表,列表包含了一些值, 以及包含这些值的记录在数据表中的存储位置。 索引键可以是单个字段、多个字段的组合字段 索引自身也需要进行维护,并占用一定的资源。一 般 只有经常用来检索的字段上建立索引,例如经常在WHERE子句中引用的字段。 5.2.2 索引的作用 通过创建唯一索引,可以保证数据记录的唯一性。 可以大大加快数据检索速度。 可以加速表与表之间的连接,这一点在实现数据的参照完整性方面有特别的意义。 在使用ORDER BY和GROUP BY子句中进行检索数据时,可以显著减少查询中分组和排序的时间。 使用索引可以在检索数据的过程中使用优化器,提高系统性能。 5.3 索引的类型 5.3.1 聚集索引和非聚集索引 根据索引对数据表中记录顺序的影响,索引可以分为聚集索引(clustered index)和非聚集索引(nonclustered index)。 聚集索引表中的数据页会依照该索引的顺序来存放。表中各行的物理顺序与键值的逻辑(索引)顺序相同。一个表只能包含一个聚集索引。 数据链内的页和其内的行按聚集索引键值排序。所有插入都在所插入行中的键值与排序顺序相匹配时执行 聚集索引中插入行 StudNo StudName StudScore陈俊 92周凯 68许淑娟 74王平 80 StudNo StudName StudScore陈俊 92周凯 68许淑娟 74王平 80 StudNo StudName StudScore王平 80陈俊 92许淑娟 74周凯 68 表StudScoreInfo无索引 表StudScoreInfo有聚集索引StudNo 为表增加一条记录,执行下列语句后 Insert Into StudScoreInfo(,’陈涛’,85) StudNo StudName StudScore陈俊 92周凯 68陈涛 85许淑娟 74王平 80 陈涛 85 非聚集索引 非聚集索引不会影响数据表中记录的实际存储顺序。在数据表中记录的实际存储顺序不会因索引的创建而发生变化。 可以在一个表中创建多个非聚集索引。一个表最多可以创建249个非聚集索引。 非聚集索引与聚集索引一样有 B 树结构,但是有两个重大差别: 1.数据行不按非聚集索引键的顺序排序和存储 2.非聚集索引的叶级不包含数据页。 非聚集索引中插入行 StudNo StudName S

文档评论(0)

1234554321 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档