第10章索引(免费阅读).pptVIP

  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文档。上传文档
查看更多
SQL Server数据库技术及应用教程 电子工业出版社同名教材 配套电子教案 * * 10.1 索引的基础知识 10.2 创建索引 10.3 查看和修改索引 10.4 统计索引 10.5 删除索引 10.6 实训——学籍管理系统索引的创建 第10章 索引 10.1.1 SQL Server中数据的存储与访问 在SQL Server系统中,数据存储的基本单位是页。一个页是8KB的磁盘物理空间。当向数据库中插入数据的时候,数据按照插入的时间顺序被放置在数据页上。一般地,放置数据的顺序与数据本身的逻辑关系之间并没有任何的关系。因此,从数据之间的逻辑关系方面来讲,数据是乱七八糟地堆放在一起的。数据的这种堆放方式称为“堆”。当一个页上的数据堆满之后,其它的数据就堆放在另外一个数据页上。 根据上面的叙述,在没有建立索引的表内,使用堆的集合方法组织数据页。在堆的集合中,数据行不按任何顺序进行存储,数据页序列也没有任何特殊顺序。因此,扫描这些数据堆集花费的时间肯定较长。在建有索引的表内,数据行基于索引的键值按顺序存放,必然改善了系统查询数据的速度。 10.1 索引的基础知识 10.1.2 索引的优缺点 1.索引的优点 创建索引的优点主要有以下两点: (1)加快数据查询 在表中创建索引后,进行以索引为条件的查询时,由于索引是有序的,可以采用较优的算法来进行查找,这样就提高了查询速度。经常用作查询条件的列应当建立索引,而不经常作为查询条件的列则可不建立索引。 (2)加快表的连接、排序和分组工作 进行表的连接、排序和分组工作,要涉及到表的查询工作,而建立索引会提高表的查询速度,从而也加快了这些操作的速度。 10.1 索引的基础知识 10.1.2 索引的优缺点 2.索引的缺点 创建索引的缺点主要有以下两点: (1)创建索引需要占用数据空间和时间 创建索引时所需的工作空间大概是数据表空间的1.2倍,还要占用一定的时间。 (2)建立索引会减慢数据修改的速度 在有索引的数据表中,进行数据修改时,包括记录的插入、删除和修改,都要对索引进行更新,修改的数据越多,索引的维护开销就越大,所以索引的存在减慢了数据修改速度。 10.1 索引的基础知识 10.1.3 索引的分类 按照索引值的特点分类,可以将索引分为唯一索引和非唯一索引;按照索引结构的特点分类,可以将索引分为聚集索引和非聚集索引。 1.唯一索引和非唯一索引 唯一索引要求所有数据行中任意两行中的被索引列或索引列组合不能存在重复值,包括不能有两个空值NULL,而非唯一索引则不存在这样的限制。 2.聚集索引和非聚集索引 根据索引的顺序与数据表的物理顺序是否相同,可以把索引分为聚集索引和非聚集索引。聚集索引会对磁盘上的数据进行物理排序,所以这种索引对查询非常有效。表中只能有一个聚集索引。 10.1 索引的基础知识 10.1.4 建立索引的原则 创建索引虽然可以提供查询速度,但是它需要牺牲一定的系统性能。因此创建索引时,那些列适合创建索引,那些列不适合创建索引,需要进行一番判断考察才能进行索引的创建。 创建索引需要注意以下事项: ? 每张表只能有一个聚集索引。 ? 创建聚集索引时所需要的可用空间是表数据量的120%。 所以要求数据库应有足够的空间。 ? 主键一般都建有聚集索引。 ? 唯一键(UNIQUE)将建为非聚集索引。 ? 在经常查询的数据列最好建立索引。 10.1 索引的基础知识 10.2.1 使用SSMS创建索引 使用SSMS创建索引又可以分为以下两种方式。 1.在对象资源管理器中使用“新建索引”命令创建索引 【案例10-1】创建表Course的课程编号Course_No唯一索引(UNIQUE约束),组织方式为聚集索引。 操作步骤如下。 ① 启动SSMS,在“对象资源管理器”窗格中展开服务器,然后展开“数据库”节点,选中要建立索引的表或视图,这里选择课程表Course。 ② 右键单击其中的“索引”项,在弹出的快捷菜单上选择“新建索引(N)…”菜单项。 ③ 打开“新建索引”对话框,输入索引名称“IDX_COURSE_NO”,选择索引类型为“聚集”,勾选“唯一”复选框,单击“添加”按钮。 10.2 创建索引 10.2.1 使用SSMS创建索引 ④ 打开显示“选择要添加到索引键的表列”提示的对话框,选择要添加的列Course_No,如图10-3所示。 ⑤ 添加完毕后,单击“确定”按钮,返回到“新建索引”对话框。单击“确定”按钮,完成索引的创建。刷新对象资源管理器中的“索引”节点后就可以看到新建的索引“IDX_COURSE

文档评论(0)

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

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

1亿VIP精品文档

相关文档