- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 索引及其应用.ppt
10.3 索引的操作 10.3.1 创建索引的理由 10.3.2 不在每一列上创建索引的理由 10.3.3 考虑创建索引的列 10.3.1 创建索引的理由 1.大大加快数据的检索速度; 2.创建唯一性索引,保证数据库表中每一行数据的唯一性; 3.加速表和表之间的连接; 4.在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间 10.3.2不在每一列上建索引的理由 1.索引需要占物理空间。 2.当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。 10.3.3考虑创建索引的列 一般来说,如下情况的列考虑创建索引: 主键。一般而言,存取表的最常用的方法是通过主键来进行。因此,我们应该在主键上建立索引。 连接中频繁使用的列(外键)。这是因为用于连接的列若按顺序存放,系统可以很快执行连接。 在某一范围内频繁搜索的列和按排序顺序频繁检索的列。 10.3.3考虑创建索引的列 而如下情况的列不考虑建立索引: 很少或从来不在查询中引用的列。因为系统很少或从来不根据这个列的值去查找行,所以不考虑建立索引。 只有两个或若干个值的列(如性别:男/女),也得不到建立索引的好处。 小表(行数很少的表)一般也没有必要创建索引。 总之,当UPDATE的性能比SELECT的性能更重要时不应创建索引。另外,索引可根据需要进行创建或删除以提高性能,适应不同操作要求。例如,要对表进行大批量的插入和更新时,应先删除索引,待执行大批量插入或更新完成后,再重建立索引。因为在插入或更新时需要花费代价来进行索引的维护。 10.4案例中应用情境 应用情境10-1.创建惟一性非聚集索引 在“cjg”的“stuinfo”表中创建一个惟一性的非聚集索引“XM_姓名”。 分析: 用UNIQUE关键字实现创建惟一性索引; NONCLUSTERED关键字代表创建非聚集索引(该关键字可以省略,因为SQL Server 默认创建非聚集索引)。 索引名用户可以自定义。 10.4案例中应用情境 根据分析,代码如下: USE cjgl CREATE UNIQUE NONCLUSTERED INDEX XM_姓名 ON stuinfo(姓名) 程序运行结果如图5-28所示。 10.4案例中应用情境 图10-28 创建惟一性的非聚集索引 10.4案例中应用情境 应用情境10-2.创建惟一性聚集索引 在“cjg”的“stuinfo”表中创建一个惟一性的聚集索引“XM_姓名”。 分析: 用UNIQUE关键字实现创建惟一性索引; CLUSTERED关键字代表创建聚集索引(该关键字不可以省略,因为SQL Server 默认创建的是非聚集索引)。 用户不能在一个表上创建多个聚集索引。如果创建过聚集索引,将给出不能创建的显示消息。 10.4案例中应用情境 根据分析,代码如下: USE cjgl CREATE UNIQUE CLUSTERED INDEX XH_学号 ON stuinfo(学号) 程序运行结果如图10-29所示。 10.4案例中应用情境 图10-29 创建惟一性的聚集索引 10.4案例中应用情境 应用情境10-3.删除索引信息 删除“stuinfo”表上的“nl_stuinfo”, “stuinfo.XM_姓名”索引 分析: 删除索引使用DROP INDEX语句即可实现; 删除多个索引,可以使用一条DROP INDEX语句。 根据分析,代码如下: USE cjgl DROP INDEX stuinfo.nl_stuinfo,stuinfo.XM_姓名 程序运行结果如图10-30所示。 10.4案例中应用情境 图10-30 用DROP INDEX语句删除索引 注意事项:删除索引的语句中,必须加上索引所在的表,否则无法删除,如图10-31所示。 10.4案例中应用情境 图10-31无法删除索引 第10章 索引及其应用 10.1 索引综述 10.2 操作索引 10.3 索引的操作 10.4 案例中的应用情境 10.1索引综述 10.1.1 数据储存 10.1.2 索引 在关系数据库中,索引是一种与表有关的数据库结构,它可以使对应于表的SQL语句执行得更快。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。当表中有大量记录时,若要对表进行查询,第一种搜索信息方式是全表搜索,是将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录,这样做会消耗大量数据库系统时间,并造成大量磁盘I/O操作;第二种就是在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中的ROWID(相当于页码)快速找到表中对应的记录。 10.1.1 数据存储 索引提供指向存储在表的指定列中的数据值
您可能关注的文档
最近下载
- IQC摄像头检验规范.doc VIP
- 2026版创新设计高考总复习英语(外研版)教材复习-教材复习答案.docx VIP
- 高压断路器机械特性检测(试验).ppt VIP
- 2015秋苏科版数学七上1.1《生活--数学》word教学设计.doc VIP
- 变压器绝缘电阻、直流电阻试验及方法课件.ppt VIP
- 湖北省物业服务合同书.doc VIP
- (正式版)B 4706.22-2008 家用和类似用途电器的安全 驻立式电灶、灶台、烤箱及类似用途器具的特殊要求.docx VIP
- 110kV及以下互感器实验方法.pptx VIP
- 《建筑工程资料管理》 教案 项目四 管理施工资料.pdf VIP
- 传染病暴发疫情应急检测.ppt VIP
文档评论(0)