- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 索引 本章学习目标理解索引的作用和分类;熟练掌握索引的创建、编辑和删除;熟练掌握索引的管理方法。 9.1 索引概述 在应用系统中,尤其在联机事务处理系统中,对数据查询及处理速度已成为衡量应用系统成败的标准。而采用索引来加快数据处理速度通常是最普遍采用的优化方法。 9.1.2 索引的设计原则 对于一张数据表,索引的有无和建立方式的不同将会导致不同的查询效果,选择什么样的索引基于用户对数据的查询条件,这些条件体现于WHERE子句和JOIN表达式中。 9.1.3 索引的分类 如果以存储结构来区分,则有“聚集索引”(Clustered Index,也称聚类索引、簇集索引)和“非聚集索引”(Nonclustered Index,也称非聚类索引、非簇集索引)的区别; 如果以数据的唯一性来区别,则有“唯一索引”(Unique Index)和“非唯一索引”(Nonunique Index)的不同; 若以键列的个数来区分,则有“单列索引”与“多列索引”的分别。 1.聚集索引聚集索引是一种对磁盘上实际数据重新组织以按指定的一个或多个列的值排序。由于聚集索引的索引页面指针指向数据页面,所以使用聚集索引查找数据几乎总是比使用非聚集索引快。每张表只能建一个聚集索引,并且建聚集索引需要至少相当该表120%的附加空间,以存放该表的副本和索引中间页。 2.非聚集索引SQL Server默认情况下建立的索引是非聚集索引,由于非聚集索引不重新组织表中的数据,而是对每一行存储索引列值并用一个指针指向数据所在的页面。换句话说非聚集索引具有在索引结构和数据本身之间的一个额外级。一个表可以拥有多个非聚集索引,每个非聚集索引提供访问数据的不同排序顺序。在建立非聚集索引时,要权衡索引对查询速度的加快与降低修改速度。 3.唯一索引唯一索引是指索引值必须是唯一的。聚集索引和非聚集索引均可用于强制表内的唯一性,方法是在现有表上创建索引时指定UNIQUE关键字。确保表内唯一性的另一种方法是使用UNIQUE约束。 4.索引视图对视图创建唯一聚集索引后,结果集将存储在数据库中,就像带有聚集索引的表一样,这样的视图称为索引视图,即是为了实现快速访问而将其结果持续存放于数据库内并创建索引的视图。索引视图在基础数据不经常更新的情况下效果最佳。维护索引视图的成本可能高于维护表索引的成本。如果基础数据更新频繁,索引视图数据的维护成本就可能超过使用索引视图带来的性能收益。 5.全文索引全文索引可以对存储在数据库中的文本数据进行快速检索。全文索引是一种特殊类型的基于标记的功能性索引,它是由 SQL Server 全文引擎生成和维护的。每个表只允许有一个全文索引。 9.2 创建索引 在SQL Server 2008中,索引可以由系统自动创建,也可以由用户手工创建。 1.系统自动创建索引系统在创建表中的其他对象时可以附带地创建新索引。通常情况下,在创建UNIQUE约束或PRIMARY KEY约束时,SQL Server会自动为这些约束列创建聚集索引。 2.用户创建索引除了系统自动生成的索引外,也可以根据实际需要,使用对象资源管理器或利用SQL语句中的CREATE INDEX命令直接创建索引。 9.2.2 利用对象资源管理器创建索引 在SQL Server Management Studio中,可以利用对象资源管理器创建索引。 9.2.3 利用T-SQL语句创建索引 CREATE [UNIQUE] [CLUSTERED|NONCLUSTERED] INDEX index_name ON { table_name | view_name } (column_name [ASC | DESC] [,...n] )[WITH [PAD_INDEX] [[,] FILLFACTOR = fillfactor ][[,] IGNORE_DUP_KEY ][[,] DROP_EXISTING ][[,] STATISTICS_NORECOMPUTE ][[,] SORT_IN_TEMPDB ]][ON filegroup ] 参数说明如下:UNIQUE:用于指定为表或视图创建唯一索引。CLUSTERED:用于指定创建的索引为聚集索引。NONCLUSTERED:用于指定创建的索引为非聚集索引。index_name:用于指定所创建的索引名称。table_name:用于指定创建索引的表名称。view_name:用于指定创建索引的视图名称。ASC|DESC:用于指定某个具体索引列的升序或降序排序方式。column_name:用于指定被索引的列。FILLFACTOR:填充因子。DROP_EXISTING:用于指定应删除并重新创建同名的先前存在
您可能关注的文档
最近下载
- 三一EBZ200悬臂式掘进机使用说明书.pdf VIP
- 教学能力比赛-教学实施报告(基础会计).pdf VIP
- 古典文献学第十章 文献的整理 : 校勘与辨伪.ppt VIP
- 学校食堂供应商评价表(参考模板).doc VIP
- 2025年广东省广州市初中学业水平考试英语试题.docx VIP
- 禁毒教育知识培训.pptx VIP
- JB-QB-FS5101火灾报警控制器_使用说明书.pdf
- 2025上半年中级软件水平考试《网络工程师(综合知识)》新版真题卷(附详细解析).docx VIP
- 新人教版小学六年级数学上册教学课件(全册).pptx VIP
- 中小学校教师师德师风专题培训讲座PPT课件.pptx VIP
文档评论(0)