数据库原理与应用09索引的创建和使用.pptxVIP

数据库原理与应用09索引的创建和使用.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库原理与应用09索引的创建和使用

《数据库原理与应用》第九讲 索引的创建和使用孙 发 勤 扬州大学教育科学与技术学院YZU.SUN@163.COM本章的学习要点:一.索引的概念和优点二.索引的分类三.创建索引的方法四.对索引进行管理索引概述一.索引的概念: 索引是由表中的一列或若干列字段值以及相应的指向表中物理标识这些值的数据页的逻辑指针构成的.索引概述一.索引的优点: 使用索引对数据进行各种操作可以极大的提高系统性能,尤其是在数据查询方面.1.利用索引的数据查询索引概述2.不利用索引的数据查询(直接查找) 系统直接在数据表中查询,从表的第一条记录开始,依次扫描比较数据表中的所有记录,直到找到所需的记录或扫描完数据表的所有记录。索引概述二.索引的缺点:1.创建的索引文件将要占用一定容量的存储 空间.2.当每次对数据表进行更新时,数据库还要执 行额外的操作来维护索引.降低对数据表的更 新速度. 总结:利用索引可以提高对表的查询速度,但是会降低对表的更新速度,所以过多的索引不一定能提高系统的性能.我们必须科学的设计索引,才能带来数据库性能的提高.索引概述三.建立索引需参照的原则(一)建议创建索引的列1.在经常用来检索的列上创建索引(如经常在WHERE、GROUP BY、ORDER BY子句中出现的列).2.在表的主键、外键上创建索引.3.在聚集索引中,避免包括不必要的列,尽可能使用较小的数据类型,例如用VARCHAR代替CHAR。索引概述三.建立索引需参照的原则(一)建议创建索引的列4.在经常用于表间连接的字段上建立索引.5.在条件表达式中经常用到的不同值较多的字段上建立索引,在不同值较少的字段上不要建立索引.6.如果经常同时使用多个字段排序,可以在这些字段上建立复合索引。7.具有高选择性的列是索引的好候选列,具有高密度的列是索引最糟糕的候选列。索引概述(二)一般不考虑用于创建索引的列.1.在查询中几乎不涉及的列2.包含太多重复值的列(如性别)3.当数据表的读写性能比查询更重要时,应少建或不建索引.4.数据类型为TEXT、NTEXT和IMAGE的列(不能用于创建索引)。索引分类一.从数据表存储结构的角度分类:1.聚集索引2.非聚集索引二.从索引字段是否允许存在重复值来分类:1.唯一索引2.普通索引三.从创建索引依据的字段个数来分类:1.单字段索引2.复合索引(多字段索引,最多可包含16个字段,但列的数据类型的长度之和不能超过900个字节)聚集索引一.概念: 聚集索引将表中的记录在物理数据页中的位置按索引字段值重新排列.二.创建聚集索引的注意事项:1.每个表只能有一个聚集索引2.因为聚集索引改变了表中行的物理顺序,所以在创建任何非聚集索引之前要首先创建聚集索引.3.在聚集索引的创建过程中,SQL SERVER会临时使用当前数据库的磁盘空间(大约为原表的1.2倍),所以要保证有足够的空间创建聚集索引.非聚集索引一.概念: 非聚集索引与表中数据行的实际存储结构无关,非聚集索引存储的是索引关键字的值与记录的存储位置的对应关系.二.创建非聚集索引的注意事项:1.使用非聚集索引的查询速度要比使用聚集索引的查询速度慢.2.一个表可以创建多个非聚集索引(最多可达249个).3.当删除、新建或重建聚集索引时,系统会自动更新所有的非聚集索引。创建索引一.由系统自动创建例如:当创建主键约束或唯一性约束时系统会自动的创建唯一性索引.二.用企业管理器创建索引打开企业管理器——右击需创建索引的表—所有任务——管理索引——……创建索引二.用企业管理器创建索引注意事项:在索引页已填满时,SQL SERVER就必须花时间拆分该索引页,以便为新行腾出空间.选择合适的填充引子值可以在叶级索引页上分配出一定百分比的可用空间,以减少页拆分.提高数据库的性能.1.填充索引:用于指定索引中间级即非叶节点中每个页(节点)上保持开放的空间.其值使用填充因子所指定的大小.2.填充因子:在创建索引时用于指定每个索引页的数据占索引页大小的百分比.创建索引二.用企业管理器创建索引填充因子大小的设置原则:1.对于那些频繁进行大量数据插入或删除的表,填充因子可大约设为10.2.对数据不更改、只读的表,填充因子可以设到95以上.创建索引三.利用TRANSACT-SQL语句创建索引语法格式:CREATE [UNIQUE] [CLUSTERED|NONCLUSTERED]INDEX INDEX_NAME ON {TABLE|VIEW}(COLUMN NAME [ASC|DESC][……]) [ON FILEGROUPNAME]创建索引三.利用TRANSACT-SQL语句创建索引例1:为AAA数据库中的学生表创建一个唯一聚集索引CC,依据学号字段进行降序排列。USE AAACREATE UNIQUE CLUSTERED

文档评论(0)

131****9843 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档