SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章

上传人:E**** 文档编号:89189381 上传时间:2019-05-21 格式:PPT 页数:33 大小:1.14MB
返回 下载 相关 举报
SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章_第1页
第1页 / 共33页
SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章_第2页
第2页 / 共33页
SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章_第3页
第3页 / 共33页
SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章_第4页
第4页 / 共33页
SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章》由会员分享,可在线阅读,更多相关《SQL Server 2000程序设计 教学课件 ppt 作者 张鑫燕 主编 吴小松 副主编 第5章(33页珍藏版)》请在金锄头文库上搜索。

1、第5章 关系、索引和视图,返回首页,创建关系图 索引的创建与维护 视图的概念 视图的创建与维护,本章要点,返回首页,51 创建关系图 要创建关系图,先把互相关联的表集合在一起,然后再做关系的设置。 【例5.1】在表XSQK与XS_CJ之间建立关系 操作步骤如下: 第1步 定义表XSQK中的学号为主键,5.1 创建关系图,返回首页,第2步 在“关系图”上单击右键,选择“新建数据库关系图”,5.1 创建关系图,第3步 单击下一步,单击完成按钮,返回首页,返回首页,第5步 将鼠标指向主表XSQK的主键学号并拖动到从表XS_CJ的学号上,出现右上图的关系设置界面。,确认主表中的主键和从表中的外键,然后

2、选择“确定”按钮,单击保存,5.1 创建关系图,输入关系图名称,5.1 创建关系图,返回首页,索引是对数据表中的一个或多个字段的值进行排序的结构,一个索引就是一个列表,在这个列表中包含了一些值 ,以及包含这些值的记录在数据表中的存储位置。 索引键可以是单个字段,也可以包含多个字段的组合字段。 5.2.1 索引的分类 1、根据索引表的物理顺序分为聚集体索引和非聚集索引: 聚集体索引:表中数据行的物理存储顺序与索引顺序完全相同,最好在其他非聚集索引建立前建立聚集索引; 每个表只能创建一个聚集索引。 默认情况下,设置PRIMARY约束建立的索引是聚集索引; 非聚集索引:不改变表中数据行的物理存储顺序

3、,在非聚集索引中仅包含索引值和指向数据行的指针; 默认情况下,设置UNIQUE约束建立的索引是非聚集索引; 每个表允许创建249个非聚集索引。,返回首页,5.2 索引,2、根据属性列是否有重复值分为惟一索引和非惟一索引: 惟一索引要求索引表的所有数据行中任意两行的被索引列不能存在重复值(包括NULL),非惟一索引没有这一限制。 设置PRIMARY约束和UNIQUE约束,自动为这些约束创建惟一索引。使用CREATE INDEX命令,设置UNIQUE选项创建惟一索引。 3、根据索引列中包含的属性列数不同分为单列索引和复合索引: 单列索引是指依据表中的单个列建立的索引,复合索引是指依据表中两列或多列

4、组合建立的索引。,返回首页,5.2 索引,5.2.2 创建索引 在SQL SERVER中创建索引有以下几种方法: 使用创建索引向导 使用企业管理器 使用T-SQL语句:CREATE INDEX,返回首页,5.2 索引,1、用创建索引向导创建索引 【示例】对表xskc中的列课程名创建唯一索引 操作步骤如下: 第1步 在SQL SERVER 2000企业管理器中,展开要创建索引的服务器。 第2步 在“工具”菜单中单击“向导”命令,打开“选择向导”对话框,如下左图所示,返回首页,选择“创建索引向导”,下一步,5.2 索引,5.2 索引,返回首页,选择“课程名”,选择“唯一性索引”,返回首页,2. 使

5、用企业管理器创建索引 操作步骤如下: 第1步 启动企业管理器,依次展开,找到要创建索引的数据库,单击“表”,用鼠标右键单击右边列表中要创建索引的表名(如“学生成绩表”),在弹出的快捷菜单中,单击“所有任务”菜单中的“管理索引”命令(见下左图)。,5.2 索引,单击“新建”按钮,5.2 索引,返回首页,指定索引名,设置索引选项,指定索引列,语句的编辑及查看,3.使用create index命令创建索引 create index 命令的主要语法格式如下: CREATE unique clustered | nonclustered INDEX index_name ON table|view(co

6、lumn ASC|DESCN) ON filegroup 说明: unique :唯一索引,省略unique选项时,所建立的是非唯一索引, clustered:聚集索引; nonclustered:非聚集索引;默认为非聚集索引 index_name:创建索引的名称; ASC|DESC :索引列的排序方式是升序还是降序。默认为升序(ASC),返回首页,5.2 索引,【示例】为表“xsqk”创建基于列“姓名”的唯一非聚集索引, 要求姓名降序排列,索引名为xm_in CREATE UNIQUE INDEX XM_IN ON XSQK(姓名) desc,返回首页,5.2 索引,5.2.3索引的查看 在

7、表上创建索引后,可能需要查找有关索引的信息。 1、利用Transact-SQL命令 语法: sh_helpindex objneame=name 【示例】查看表“xsqk”的索引 语句: exec sp_helpindex xsqk,返回首页,5.2 索引,2、使用企业管理器查看 步骤如下: (1)为要修改索引的表打开表设计器,在表设计器中右击,然后从快捷菜单中选择“属性”命令。 (2)选择“索引/键”选项卡(见下图),可查看此表的所有索引。,5.2 索引,返回首页,5.2.4索引的删除 索引不再需要时,将其从数据库中删除,回收空间。通过主键约束和惟一约束建立的索引不允许用户删除。 1、使用企

8、业管理器删除索引 在 如下左图的“管理索引”对话框中,选中需要删除的索引,然后单击“删除”按钮,在弹出确认对话框,单击“是”即可。,返回首页,5.2 索引,选中需要删除的索引,单击“删除”按钮,单击“是”,2、使用T-SQL命令删除索引 DROP INDEX语句的功能是从数据库中删除指定的索引。 语法格式如下: DROP INDEX table.index|view.index,n 其中table|view:是索引列所在的表或视图。 Index:要除去的索引名称。 【示例】删除xsqk表中的xm_in索引。 DROP INDEX xsqk.xm_in,5.2 索引,返回首页,5.3.1视图的概

9、念 视图是一个虚拟表,是保存在数据库中的选择查询,是用户用以查看数据库中数据的一种方式。 视图也是由一些记录和字段组成的二维表,可以使用视图操作数据; 视图与数据表之间的区别:视图是引用存储在数据库中的查询语句时动态创建的,它本身并不存储数据,真正的数据依然存储在数据表中。 视图有如下特点: (1)着重于特定数据,就是让用户能够着重于他们所感兴趣的特定数据,并实现保护数据安全的目的。 (2)简化数据操作。 (3)自定义数据。 (4)组合分区数据。,返回首页,5.3 视图,5.3.2 创建视图 第1步 在企业管理器中,展开指定要使用的数据库,选中“视图”目录。 第2步 鼠标右键单击,选择“新建视

10、图”命令,打开“视图设计器”窗口,它包含关系图窗格,网格窗格,SQL窗格和结果窗格4部分 ,如下图,返回首页,5.3 视图,关系图窗格,网格窗格,SQL窗格,结果窗格,右击关系图网格,选择“添加表”命令,5.3 视图,返回首页,选择相应的表,单击“添加”按钮,选择相应的列,或在此选择相应的列,在此设置排序方式或准则规则,相应的SQL语句,运行结果,最后单击“保存按钮”,2、使用T-SQL语句创建视图 CREATE VIEW的语法格式如下: CREATE VIEW view_name(column,n) with ENCRYPTION AS select_statement WITH CHECK

11、 OPTION 说明: view_name:指定视图的名称。 Column:定义视图中的字段名。如果没有指定,则视图字段将获得与SELECT语句中的字段相同的名称。 WITH ENCRYPTION:指定将CREATE VIEW语句文本存储到系统表时进行加密。 select_statement:定义视图的命令,可以使用多个表及其他视图。 WITH CHECK OPTION:强制所有通过视图修改的数据满足语句中指定的选择条件。,返回首页,5.3 视图,【例5-1】利用pubs数据库中的表authors定义视图V1,查询authors表中的au_id,au_lname,phone和contract。

12、 USE pubs GO CREATE VIEW V1 AS SELECT au_id,au_lname,phone,contract FROM authors,返回首页,5.3 视图,【例5-2】利用pubs数据库中的表titles建立视图accounts,使用WITH ENCRYPTION选项并显示计算列,重命名列。 USE pubs GO CREATE VIEW accounts (title, advance, amt_due) WITH ENCRYPTION AS SELECT title, advance, price * royalty * ytd_sales FROM titl

13、es WHERE price $5 GO,5.3 视图,返回首页,5.3.3查询视图 如果视图没有加密,就可以查看视图以了解数据源表中的提取方式或查看视图所定义的数据。 1、获取关于视图的信息 (1)使用T-SQL命令 语法:sp_helptexe ibjname= name 【例5-3】利用sp_helptext来查看视图V1的定义。 sp_helptext V1 GO 执行结果为: Text - CREATE VIEW V1 AS SELECT au_id,au_lname,phone,contract FROM authors,返回首页,5.3 视图,2、使用企业管理器 第1步 展开服务

14、器,然后展开视图所属的数据库,单击“视图”。,5.3 视图,第2步 右击所选视图,然后单击“属性”命令,5.3.4 重命名视图 1. 利用企业管理器 【示例】将例5-1中视图V1重命名为test的步骤如下: 第1步 在当前数据库中单击“视图”目录 第2步 在右边视图列表窗口内选择需重命名的视图(V1),单击鼠标右键,在弹出快捷菜单中选择重命名选项(见下图)。 第3步 在视图的重命名文本框中输入新的视图名,返回首页,5.3 视图,2、利用T-SQL语句的sp_rename重命名 sp_rename用于重命名当前数据库中用户自定义的对象,如:视图,表,存储过程,触发器,索引等 语法格式: sp_r

15、enameobjname=object_name newname=nes_name ,objtype=object_type 参数含义如下: objname=object_name:当前用户对象的名字 newname = new_name:指定对象的新名称。 , objtype = object_type :被重命名对象的类型。默认值为NULL。 【例5-6】将v1视图重命名为test。 sp_rename v1,test Go,5.3 视图,返回首页,5.3.5修改视图的定义 对于已经存在的视图,我们可以修改视图的定义和属性,而不需要先删除该视图再重建同名的视图。 1、利用“视图设计器” 步骤如下: 第1步 在企业管理器中,右击需要修改的视图。 第2步 选择“设计视图”命令,就可以打开“视图设计器”(见下图)。 第3步 读者可根据自己的需要,对视图修改,方法与添加视图相似。,返回首页,5.3 视图,2、利用T-SQL命令 ALTER VIEW view_name(column,n) WIT

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号