- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL Server--chap7--第7章 索引及其应用 SQL Server只选用那些能加快数据查询速度的索引,可利用性是建立索引的首要条件。 若用索引查询的速度不如表扫描法速度快,系统仍会采用表扫描法进行检索 建立不能被SQL Server所采用的索引只会增加系统的负担,降低检索的速度 8.4.1 SQL命令建立索引 CREATE[UNIQUE][clustered|nonclustered] INDEX index_name ON[[database.]ower.]{table_name|view_name} (column_name1 [,column_name2…]) 簇/非簇索引 索引关键字字段上不允许有相同内容的记录 生成索引的中间结果存在 tempdb库中 过期的 索引统计不自动重新计算 [WITH [FILLFACTOR=fillfactor] [[,]IGNORE_DUP_KEY] [[,]DROP_EXISTING] [[,]STATISTICS_NORECOMPUTE] [[,]SORT_IN_TEMPDB?] ] [ON filegroup] 续上页 索引存储页的填充率 修改数据时控制的反应 指定应除去并重建已命名的先前存在的聚集/非聚集索引 注意事项: (1)若创建了PRIMARY KEY约束或UNIQUE约束时 系统将自动为建有这些约束的列创建聚集索引 当删除PRIMARY KEY约束或UNIQUE约束时,这些列上创建的聚集索引也会被自动删除 (2)执行CREATE INDEX语句创建索引必须由是表的所有者完成 (3)每张表只能存在一个聚集索引 (4)聚集索引的平均大小是表大小的5%,但是,由于被索引列的不同聚集索引的大小也会发生变化 (5)当数据页中的数据行被删除时,所占空间将被回收并用于新的数据行 例:在Student数据库中的Course表的Cn列上创建非聚集索引CnIndex USE Student GO CREATE NONCLUSTERED INDEX CnIndex ON dbo.Course(Cn) ON PRIMARY 例:在Student数据库中的Course表的Cno列上创建唯一索引CnoIndex USE Student GO CREATE UNIQUE INDEX CnoIndex ON dbo.Course(Cno) ON PRIMARY 若在表中存在重复值的列上创建唯一索引, CREATE INDEX语句将失败并返回带有第一个重复值的错误信息 但其他重复的值也可能存在 SELECT Column_Name , COUNT (Column_Name) FROM table GROUP BY Column_Name HAVING COUNT (Column_Name)1 ORDER BY Column_Name 用户可通过SQL命令来查找到该列上存在的所有重复行 不仅可以为表中的单个列建立索引,也可以为表中的一组列建立索引,即复合索引 例:在Student数据库中的SC表的Sno和Cno列上创建复合索引SC_Index USE Student GO CREATE INDEX SC_Index ON dbo.SC(Sno,Cno) ON PRIMARY 应创建在需被频繁访问的列上; 最多可组合16个列; 组合列的总长度最大可以达到900字节,考虑到查询效率,列总长度应尽量短; 所组合的列必须来自同一张表; 要使用复合索引,则查询的WHERE 子句必须参照复合索引的第一列; 首先定义最具唯一性的列。 复合索引 * 第8章 索引及其应用 8.1有关索引的基础知识 在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据。 数据库中的索引是一个表中所包含的值的列表,其中注明了表中包含各个值的行所在的存储位置 。 8.1.1 SQL Server中数据的存储 数据存储的基本单位是页,其大小是 8 KB,每页的开始部分是用于存储系统信息的96字节的页首。 页的类型 页的可用空间量 拥有页的对象的对象ID 八种页类型 数据 索引 文本/图像 全局/辅助全局分配映射表 页的可用空间 索引分配映射表 大容量更改映射表 差异更改映射表 数据页包含除 text、ntext和image数据外的所有数据。 存储在 单独的 页中 8.1.2 SQL Server中数据的访问 表扫描法 使用索引 方法 表扫描法:当访问未建立索引的表内数据时,从表的起始处逐行查找,直到找到符合条件的行为止。 效率低 索引法:当使用索引访问建有索引的表内数据时,系
您可能关注的文档
最近下载
- 非煤矿山井巷工程施工组织设计标准 GB/T 51300-2018.docx VIP
- 体操理论课专用课件.ppt VIP
- 中职英语(高教版)教案:Unit1-Festivals-around-the-world(全6课时).pdf VIP
- 房屋建筑工程常用模板及支撑安装标准图集.pdf VIP
- 2 中国人首次进入自己的空间站(教学设计)-2025-2026学年八年级语文上册同步公开课精品讲堂(统编版2024).docx VIP
- 《艺术与审美》教学教案.docx
- 分红保险知识问答.doc VIP
- 热控检修规程(最终版).doc VIP
- 湖南大学《遗传学》课件-Chapter2Mitosis and Meiosis.pptx VIP
- 25年-《背诵宝典》-中级-会计实务.pdf VIP
文档评论(0)