SQLServer2008第7章索引与视图

时间:2025-04-20

第7章 索引与视图

本章的学习目标:

索引的优点和缺点 聚集索引和非聚集索引的特点 索引的类型 视图的概念、特点和类型 使用CREATE VIEW语句创建视图 通过视图修改基表中的数据

7.1 索引概述

通过创建和设计良好的索引进行数据查 询,可以显著提高数据库查询和应用程 序的性能,减少磁盘I/O操作,降低系统 资源的消耗。

7.1.1 索引的基本概念

数据库系统用下列两种方法之一来访问数据:(1)表扫描,就是指系统将指针放在该表的表头数据所在的数 据页上,然后按照数据页的排列顺序,逐页地从前向后扫描 该表数据所占有的全部数据页,直至扫描完表中的全部记录。 在扫描时,如果找到符合查询条件的记录,那么就将这条记 录挑选出来。最后,将全部挑选出来符合查询语句条件的记 录显示出来。 (2)使用索引查找。索引是一种树状结构,其中存储了关键字 和指向包含关键字所在记录的数据页的指针。当使用索引查 找时系统将沿着索引的树状结构,根据索引中关键字和指针 找到符合查询条件的记录。最后将全部查找到的符合查询语 句条件的记录显示出来。

索引是一种与表或视图关联的物理结构, 能提供一种以一列或多列的值为基础迅 速查找表中行的能力,用来加快从表或 视图中检索数据行的速度

7.1.2 索引的分类

在Microsoft SQL Server 2008 R2系统中 有两种基本的索引类型:聚集索引和非 聚集索引。除此之外,还有唯一性索引、 包含性列索引、索引视图、全文索引及 XML索引等。

1.索引文件架构(1)堆文件 堆是不含聚集索引的表,表中的数据没有任何的顺序。 堆结构中数据按照插入的先后次序存放,堆文件的数 据页面不一定在物理上相邻。堆文件执行插入操作很 容易,但是效率不高。 (2) B+树的总体结构 B+树(Balance树,平衡树)是目前广泛采用的动态文 件结构. 在B+树索引中,索引分级组织成一棵树。最上层的索 引节点称为根节点,中间节点按照索引数据量分成不 同的层次。最下层的索引节点称为叶节点。

.聚集索引

聚集索引是一种数据表的物理顺序与索引顺序相同的索引。 建立索引时,系统将对表的物理数据页中的数据按列进行排列, 然后再重新存储到磁盘上,即聚集索引与数据是混为一体的。聚 集索引的叶级和非叶级构成了一个特殊类型的B+树结构. 聚集索引的特点如下: (1)表的数据按照索引的数据顺序排列。 (2)每个数据表只能建立一个聚集索引,并且会在第一个建立, 常常会在主键所在的列或者最常查询的列上建立聚集索引。

(3)索引将占用用户数据库的空间。 (4)适合范围查询。

非聚集索引

非聚集索引是一种数据表的物理顺序与索引顺 序不相同的索引。非聚集索引与聚集索引具有 相同的B树结构,但是在非聚集索引中,基础 表的数据行不是按照非聚集键的顺序排序和存 储,且非聚集索引的叶级是由索引页而不是由 数据页组成。 非聚集索引既可以定义在表或视图的聚集索引 上,也可以定义在表或视图的堆上。

创建一个非聚集索引时,应该注意下列事项:(1)如果没有指定索引类型,那么默认的类型是非聚集索引。 (2)索引页的叶级只包含索引的关键字,不包含实际的数据 (3)每个表最多可以创建249个非聚集索引。 (4)聚集索引应在非聚集索引被创建之前创建。 (5)唯一性是由叶级维护的。 (6)以下情况发生时,SQL Server会自动重建现有的非聚集索 引: 删除现有的聚集索引时 创建聚集索引时 使用DROP_EXISTING选项来改变聚集索引列的定义时

聚集索引上的非聚集索引

当在一个聚集索引上构建非聚集索引时, 索引中的指针值就是数据行的聚集索引 键值。一旦定位到索引值,SQL Server 就使用聚集键导航聚集索引来检索所有 需要的列。

唯一索引

唯一索引是指索引值必须是唯一的,不允许数 据表中具有两行相同的索引值。 聚集索引和非聚集索引是从索引数据存储的角 度来区分的;而唯一索引和非唯一索引是从索 引值来区分的,所以唯一索引和非唯一索引既 可以是聚集索引,也可以是非聚集索引,只要 列中的数据是唯一的,就可以在一张表中创建 一个唯一索引和多个非聚集索引。

7.2 索引的操作7.2.1 创建索引 创建索引的方式可以分为直接方法和间接方法。

直接创建索引的方法就是使用命令和工具直接创建索引。 间接创建索引就是通过创建其他对象而附加创建了索引。

主键约束或唯一性约束创建的索引的优先级高于使用 CREATE INDEX语句创建的索引。当在表上定义主键或 唯一性约束时,如果表中已经有了使用CREATE INDEX 语句创建的标准索引时,那么主键约束或唯一性约束 创建的索引覆盖以前创建的标准索引。

1. 直接使用Microsoft SQL Server Management Studio创建索引。

(1)从“开始”菜单上选择“程序”| Microsoft SQL Server 2008 R2| SQL Server Management Studio命令,使用Windows或 SQL Server身份验证建立连接。 (2)在“对象资源管理器”窗口中,打开要 建立索引的表“业务记录”表,单击前面的 “+”,展开选项,右键单击“索引”项,选择 “新建索引”命令,打开“新建索引”对话框

(3)在“选择页” …… 此处隐藏:2168字,全部文档内容请下载后查看。喜欢就下载吧 ……

SQLServer2008第7章索引与视图.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219