第21讲索引讲述.ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第21讲索引讲述

* * * * * * * * * * * * * * * 第6章 视图和索引—索引 第21讲 SQL Server 2005 第6章 视图和索引 —— 索引的使用 主讲人:连家剑 第21讲 复习 数据库的查询 基本查询、汇总查询、连接查询、子查询 视图的使用 视图的用途 创建视图 修改视图 查看视图的定义 通过视图向数据表插入数据 聚焦特定数据 简化数据操作 定制用户数据 合并分离数据 create view 视图名 as select语句 Exec sp_helptext 视图名 Insert into 视图名 values(列值表) alter view 视图名 as select语句 引: 请思考:在一个数据表中检索数据时是如何进行的? 如果采取逐行扫描的方式进行检索,可行吗? 有什么方法可提高检索效率? 对于小表来说,是可行的。但对于有成千上万行的表来说,其搜索的效率非常低。 建立索引。 第6章 视图和索引 教学内容 基础知识: 索引的基本概念 创建索引 操作索引 全文索引(了解) 第6章 视图和索引 学习目标 认知目标: 掌握索引的概念 理解创建索引的必要性 掌握几种索引类型的特点和它们适合的场合 了解全文索引的概念 能力目标: 掌握用命令方式创建索引的方法(重点、难点) 掌握查看、删除索引的方法(重点) 一、索引的基本概念 1. 索引的含义 索引:是对表或视图中的一列或多个列的值进行排序的一种物理结构,它由该表或视图中的一列或若干列值,以及这些列值的记录在数据表中存储位置的物理地址所组成。 索引如同书的目录 索引信息存放在索引页中,表中的数据存放在数据页中。 一、索引的基本概念 2.建立索引的优缺点 建立索引的优点 建立了索引的列作为查询条件时,数据的检索速度能大大地提高。 增加索引的不利方面 创建索引也要花费时间和占用物理空间。 虽然索引加快了检索速度,但减慢了数据修改的速度(因为每执行一次数据修改,就需要对索引进行维护)。 一、索引的基本概念 3. 使用索引的准则 何时创建索引? 在主键上 在用于连接的列(外键)上 在经常用作查询条件的列上 在经常要排序的列上 一、索引的基本概念 3. 使用索引的准则 何时可不考虑建立索引? 很少或从来不作为查询条件的列 在小表中的任何列 属于text、image、长度较大的char、varchar、binary等数据类型的列 当修改的性能需求远大于查询的性能需求时,不要创建索引 一、索引的基本概念 4. 索引的类型 按数据的物理存放顺序: 聚集索引:会改变表记录的物理存储顺序,使之与索引列的顺序完全相同(适用于范围搜索)。 非聚集索引:不改变表记录的存放顺序(适用于直接匹配单个条件的查询)。 按索引列取值的唯一性: 唯一索引:要求被索引列不能有重复值,也不能有两个NULL。 非唯一索引:不存在这一限制。 按索引列的个数:单索引、复合索引 二、创建索引 1. 创建索引的方法 系统自动建立索引 人工创建索引 T-SQL命令方式(掌握) 企业管理器方式 使用索引管理器 二、创建索引 2. 系统自动建立索引 添加主键约束时 系统会自动在表中生成一个聚集惟一索引。 在xsqk表的“学号”列上已创建了聚集惟一索引(名为PK_xsqk) 在xs_kc表的“学号和课程号”两列上已创建了聚集惟一索引 在kc表中的“课程号”列上已创建了聚集惟一索引 添加惟一性约束时 系统会自动在表中生成一个非聚集惟一索引。 二、创建索引 2. 系统自动建立索引 实例1:创建一个名为test的表,其结构定义如下。 use xscj create table test (课程号 smallint constraint pk_test primary key, 课程名 char(14) constraint uq_test unique, 授课教师 char(10) ) 生成惟一性聚集索引 生成惟一性非聚集索引 二、创建索引 3. 手工建立索引—(1)表索引 命令格式 create [ unique ] [ clustered | nonclustered ] index 索引名 on { 表名 | 视图名 } ( 列名 [ asc | desc ] [ , ...n ] ) 说明: 一个表中只能创建1个聚集索引。 由于系统已自动在主键上创建了聚集索引,所以用户不能再创建,除非先删除已有的。 一个表中可以创建若干个非聚集索引。 默认值 二、创建索引 3. 手工建立索引—(1)表索引 实例2:在kc表的“课程名”列上创建一个非聚集索引,索引名为“ix_kcm”,并降序排列。

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档