《SQL Server2000数据库及应用》-李伟红-电子教案 第6章 视图的创建与维护

上传人:E**** 文档编号:89430127 上传时间:2019-05-25 格式:PPT 页数:54 大小:134.50KB
返回 下载 相关 举报
《SQL Server2000数据库及应用》-李伟红-电子教案 第6章  视图的创建与维护_第1页
第1页 / 共54页
《SQL Server2000数据库及应用》-李伟红-电子教案 第6章  视图的创建与维护_第2页
第2页 / 共54页
《SQL Server2000数据库及应用》-李伟红-电子教案 第6章  视图的创建与维护_第3页
第3页 / 共54页
《SQL Server2000数据库及应用》-李伟红-电子教案 第6章  视图的创建与维护_第4页
第4页 / 共54页
《SQL Server2000数据库及应用》-李伟红-电子教案 第6章  视图的创建与维护_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《《SQL Server2000数据库及应用》-李伟红-电子教案 第6章 视图的创建与维护》由会员分享,可在线阅读,更多相关《《SQL Server2000数据库及应用》-李伟红-电子教案 第6章 视图的创建与维护(54页珍藏版)》请在金锄头文库上搜索。

1、第6章 视图的创建与维护,北华航天工业学院 李伟红,本章学习目标,了解视图的含义及使用视图有哪些优点; 掌握视图和数据表的不同之处; 掌握创建视图的方法; 掌握查看视图信息的方法; 掌握修改视图的方法; 掌握删除视图的方法。,6.1 视图概述,视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表。视图所对应的数据并不真正地存储在视图中,而是存储在视图所引用的数据表中,视图的结构和数据是对数据表进行查询的结果。,6.1 视图概述,使用视图有很多优点,主要优点如下。 (1)视图可以屏蔽数据的复杂性,简化用户对数据库的操作。 (2)可以使用视图重新组织数据。 (3)可以定制不同用户对数据的

2、访问权限。,6.2 创建视图,在SQL Server 2000中创建视图可以有三种方法:使用企业管理器创建视图、使用Transact-SQL语句中的CREATE VIEW命令创建视图,还可以利用创建视图向导来创建视图。,6.2 创建视图,创建视图的要求如下: 视图的名称必须满足标识符的命名规则。 只能在当前数据库中创建视图。 一个视图中最多只能引用1024个列。 不能在视图上创建索引,不能在规则、默认的定义中引用视图。,6.2.1 使用企业管理器创建视图,方法一:在企业管理器左边的“树”选项卡中选择指定的SQL Server组,展开指定的服务器,打开要创建视图的数据库文件夹,选中指定的数据库,

3、右击该数据库图标,从弹出的快捷菜单中依次选择“新建”“视图”命令,会打开新建视图对话框。,6.2.1 使用企业管理器创建视图,方法二:也可以在数据库文件夹中,右击下一层的“视图”选项,在弹出的快捷菜单中选择“新建视图”命令。,6.2.2 使用Transact-SQL语句创建视图,其语法形式如下: CREATE VIEW . view_name ( column ,.n ) WITH ,.n AS select_statement WITH CHECK OPTION ,6.2.2 使用Transact-SQL语句创建视图, := ENCRYPTION | SCHEMABINDING | VIEW

4、_METADATA ,6.2.2 使用Transact-SQL语句创建视图,其中各参数的说明如下: owner:用于指定创建视图的所有者的用户名,owner必须是当前数据库中的现有用户名,owner默认为当前数据库中与当前连接相关联的用户名。,6.2.2 使用Transact-SQL语句创建视图,view_name:用于指定视图的名称,column用于指定视图中的字段名称。 WITH ENCRYPTION:表示SQL Server加密包含CREATE VIEW语句文本在内的系统表列。WITH ENCRYPTION主要用于将存储在系统表syscomments中的语句进行加密。,6.2.2 使用T

5、ransact-SQL语句创建视图,select_statement:用于创建视图的SELECT语句,利用SELECT命令可以从多个表中或者视图中选择列构成新视图的列,也可以使用UNION关键字联合起来的多个SELECT语句。但是,在SELECT语句中,不能使用ORDER BY、COMPUTE、COMPUTE BY语句和INTO关键字及临时表。,6.2.2 使用Transact-SQL语句创建视图,WITH CHECK OPTION:用于强制视图上执行的所有数据修改语句都必须符合由select_statement设置的准则。通过视图修改数据行时,WITH CHECK OPTION可确保提交修改

6、后,仍可通过视图看到修改的数据。,6.2.2 使用Transact-SQL语句创建视图,例6-1 使用Transact-SQL语句创建一个新视图,命名为“视图_借出图书信息”,要求基表的来源为:图书基本信息表和图书借阅信息表,选择的字段为:图书借阅信息表中的图书编码,图书基本信息表中的书名、作者、出版单位、版次,图书借阅信息表中的图书状态。要求查询的数据为已借出的所有图书的基本信息。,6.2.3 使用创建视图向导创建视图,方法一:在企业管理器中选中某个数据库,单击“工具”菜单,选择其中的“向导”命令。 在出现的“选择向导”对话框中单击其中“数据库”选项左边的加号,在下一级选项中会看到“创建视图

7、向导”选项。,6.2.3 使用创建视图向导创建视图,方法二:在企业管理器中,选择工具栏中的“向导”图标,会直接打开“选择向导”对话框。,6.3 管理视图,6.3.1 查看视图信息 每当创建了一个新的视图后,SQL Server 2000会在系统表中保存该视图的信息。SQL Server 2000允许用户通过查看系统表来获得视图的名称、视图的所有者、创建视图的时间等有关信息。,6.3.1 查看视图信息,存放视图信息的系统表主要有以下几个。 (1)sysobjects:存放视图的名称等基本信息。 (2)syscolumns:存放视图中定义的列。 (3)sysdepends:存放视图的依赖关系。 (

8、4)syscomments:存放定义视图的文本。,1使用企业管理器查看视图信息,(1)打开企业管理器窗口,在企业管理器左边的“树”选项卡中选择指定的SQL Server 2000组,展开指定的服务器,打开要查看视图的数据库文件夹。 (2)选择数据库文件夹下的“视图”目录,在右边窗格中会列出当前数据库中的所有视图。在这里可以看到视图的基本信息,如视图名称、所有者、创建日期等。,1使用企业管理器查看视图信息,(3)也可以在视图属性对话框中查看视图的基本信息,方法是用鼠标右击某个要查看的视图,在弹出的快捷菜单中选择“属性”命令,会打开视图属性窗口。,1使用企业管理器查看视图信息,(4)如果要查看视图

9、的相关性信息,可以用鼠标右击某个要查看的视图,在弹出的快捷菜单中依次选择“所有任务”“显示相关性”命令,会打开视图相关性对话框。,1使用企业管理器查看视图信息,(5)如果要查看视图的输出数据,可以在企业管理器中右击某个视图的名称,从弹出的快捷菜单中依次选择“打开视图”“返回所有行(或者返回特定行)”命令,在企业管理器中就会显示该视图的输出数据。,2使用系统存储过程查看视图信息,可以使用系统存储过程sp_help查看视图的特征信息,sp_depends显示视图所依赖的对象。sp_helptext显示视图在系统表中的定义。,2使用系统存储过程查看视图信息,例6-2 使用系统存储过程sp_help显

10、示“视图_读者借阅信息”的特征信息。 例6-3 使用sp_helptext显示“视图_读者借阅信息”在系统表中的定义。 例6-4 使用sp_depends显示“视图_读者借阅信息”所依赖的对象。,6.3.2 修改视图,如果已定义的视图不能满足用户要求,可以使用企业管理器或Transact-SQL语句修改视图的定义。也可以对现有的视图重新命名。,1使用企业管理器修改视图定义,在企业管理器中,右击要修改的视图名称,从弹出的快捷菜单中选择“设计视图”命令,会出现视图的设计窗口。该窗口与创建视图时的窗口相同,可以按照创建视图的方法修改视图的定义。,2使用Transact-SQL语句修改视图定义,可以使

11、用Transact-SQL语句中的ALTER VIEW语句修改视图,但首先必须拥有使用视图的权限,然后才能使用ALTER VIEW命令。,2使用Transact-SQL语句修改视图定义,其语法形式如下: ALTER VIEW view_name (column,.n) WITH ENCRYPTION AS select_statement WITH CHECK OPTION ,2使用Transact-SQL语句修改视图定义,其中各参数的说明如下: view_name:用于指定要修改的视图。 column:用于指定视图中包含的一列或者多列的名称,用逗号分开,它们将成为给定视图的一部分。,2使用T

12、ransact-SQL语句修改视图定义,select_statement:用于指定定义视图的SELECT语句。 WITH ENCRYPTION:用于加密syscomments表中包含ALTER VIEW语句文本的条目,使用WITH ENCRYPTION可防止将视图作为SQL Server 2000复制的一部分发布。,2使用Transact-SQL语句修改视图定义,WITH CHECK OPTION:用于强制视图上执行的所有数据修改语句都必须符合由定义视图的select_statement设置的准则。,2使用Transact-SQL语句修改视图定义,例6-5 修改“视图_读者借阅信息”,在该视图

13、中增加一个新的条件,要求只显示计算机系教师的借书情况,并加密视图。,6.3.3 重命名视图,1使用企业管理器重命名视图 在企业管理器中,右击要修改名称的视图,从弹出的快捷菜单中选择“重命名”命令。或者在视图上再次单击,都可以完成修改视图名称的功能。,2使用系统存储过程重命名视图,可以使用系统存储过程sp_rename来修改视图的名称,该存储过程的语法形式如下: sp_rename old_name,new_name,2使用系统存储过程重命名视图,例6-6 使用系统存储过程sp_rename来完成把“视图_计算机系读者借阅信息”重命名为“视图_计算机系教师借阅信息”。,6.3.4 使用视图管理数

14、据,通过视图可以方便地检索到任何所需要的数据信息。但是视图的作用并不仅仅局限于检索记录,还可以利用视图对创建视图的基表中的数据进行修改,比如插入新的记录、更新记录及删除记录等。,6.3.4 使用视图管理数据,使用视图修改数据时,需要注意以下几点。 (1)修改视图中的数据时,不能同时修改两个或者多个基表,可以对基于两个或多个基表或者视图的视图进行修改,但是每次修改都只能影响一个基表。 (2)不能修改那些通过计算得到的字段,如包含计算值或者合计函数的字段。,6.3.4 使用视图管理数据,(3)如果在创建视图时指定了WITH CHECK OPTION选项,那么使用视图修改数据库信息时,必须保证修改后

15、的数据满足视图定义的范围。 (4)执行UPDATE、DELETE命令时,所删除与更新的数据必须包含在视图的结果集中。,6.3.4 使用视图管理数据,(5)如果视图在创建时引用了多个数据表,则无法用DELETE命令删除其中的数据,若使用UPDATE命令更新数据,则应与INSERT语句一样,被更新的列必须属于同一个数据表。,6.4 删除视图,对于不再使用的视图,可以使用企业管理器或者Transact-SQL语句中的DROP VIEW命令删除它。,6.4.1 使用企业管理器删除视图,打开企业管理器窗口,选择要删除的视图,右击该视图名称,从弹出的快捷菜单中选择“删除”命令,会出现“除去对象”对话框。,

16、6.4.2 使用Transact-SQL语句删除视图,可以使用Transact-SQL语句中的DROP VIEW命令删除视图,其语法形式如下: DROP VIEW view_name ,n 可以使用该命令同时删除多个视图,只需在要删除的各视图名称之间用逗号隔开即可。,6.4.2 使用Transact-SQL语句删除视图,例6-7 删除“视图_借出图书信息”。,6.5 本章小结,视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表。视图在显示时也包括一个或多个数据列和数据行,但视图所对应的数据并不真正地存储在视图中,而是存储在视图所引用的数据表中,视图的结构和数据是对数据表进行查询的结果。,6.5 本章小结,在视图中最多可以定义一个或者多个基表的1024个字段。对视图中的数据也可以进行查询、修改和删除,但对数据的操作要满足一定的条件。当对通过视图看到的数据进行修改时,相应的基表中的数据也会发生变化,同时,若基表中的数据发生变化,这种变化也会自动地反映到视图中。,

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

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

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