数据视图实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库系统概论》实验报告

实验名称:数据视图

实验人:

实验地点:实验楼317

实验日期:2009-10-25

一、实验准备

1.硬件及软件环境要求

为了使该实验顺利进行,需要有一台计算机,计算机必须安装Windows 2000、Windows XP或Windows NT操作系统,还必须安装Microsoft SQL Server 2000 任意一版本(个人版、标准版、企业版)。实验开始之前,必须将实验1.2节中创建好的SCDB数据库和ShiYan数

据库附加到当前SQL数据库服务器中。实验人员必须掌握了数据视图机制的相关概念,懂得了数据视图机制对数据操作的主要作用及其基本特点。

2.本实验涉及的主要SQL语句的语法格式

视图是一种常用的数据库对象,可以将它看成是虚拟表或存储在数据库中的查询,它为查看和存取数据提供了另外一种途径。对查询执行的大多数操作,使用视图一样可以完成。而且,使用视图可以简化数据操作,同时还可以提高数据库的安全性。

(1) CREATE VIEW语句

创建一个虚拟表,该表以另一种方式表示一个或多个表中的数据。CREATE VIEW必须

是查询批处理中的第一条语句。在Transact-SQL语言中,DROP VIEW语句的基本语法为:CREATE VIEW [< database_name>.] [< owner>.] view_name [(column[,...n ])] [ WITH [,...n ]]

AS

select_statement

[ WITH CHECK OPTION ]

< view_attribute > ::={ ENCRYPTION | SCHEMABINDING | VIEW_METADATA }【说明】

view_name:视图的名称。视图名称必须符合标识符规则。可以选择是否指定视图所有者名称。

column:视图的列名。只有在下列情况下,才必须命名CREATE VIEW中的列:当列是从算术表达式、函数或常量派生的,两个或更多的列可能会具有相同的名称,视图中的某列被赋予了不同于派生来源列的名称。还可以在SELECT 语句中指派列名。如果未指定column,则视图列将获得与SELECT 语句中的列相同的名称。

n:表示可以指定多列的占位符。

AS:代表视图要执行的操作。

select_statement:定义视图的SELECT 语句。该语句可以使用多个表或其它视图。若要从创建视图的SELECT 子句所引用的对象中选择,必须具有适当的权限。视图不必是具体某个表的行和列的简单子集。可以用具有任意复杂性的SELECT 子句,使用多个表或其

它视图来创建视图。

WITH CHECK OPTION:强制视图上执行的所有数据修改语句都必须符合由select_statement设置的准则。通过视图修改行时,WITH CHECK OPTION可确保提交修改后,仍可通过视图看到修改的数据。

WITH ENCRYPTION:表示SQL Server加密包含CREATE VIEW语句文本的系统表列。使用WITH ENCRYPTION可防止将视图作为SQL Server复制的一部分发布。

SCHEMABINDING:将视图绑定到架构上。指定SCHEMABINDING时,select_statement 必须包含所引用的表、视图或用户定义函数的两部分名称(owner.object)。

VIEW_METADA TA:指定为引用视图的查询请求浏览模式的元数据时,SQL Server将向DBLIB、ODBC和OLE DB API返回有关视图的元数据信息,而不是返回基表或表。(2) DROP VIEW语句

当从当前数据库中删除一个或多个视图。可对索引视图执行DROP VIEW。在Transact-SQL语言中,DROP VIEW语句的基本语法为:

DROP VIEW { view } [ ,...n ]

【说明】

view:要删除的视图名称。视图名称必须符合标识符规则。可以选择是否指定视图所有者名称。

n:表示可以指定多个视图的占位符。

(3) ALTER VIEW语句

更改一个先前创建的视图,包括索引视图,但不影响相关的存储过程或触发器,也不更改权限。在Transact-SQL语言中,ALTER VIEW语句的基本语法为:

ALTER VIEW [< database_name>.] [< owner>.]view_name [( column[,...n])] [ WITH [,...n]]

AS

select_statemen

[ WITH CHECK OPTION ]

::={ ENCRYPTION | SCHEMABINDING | VIEW_METADATA }

【说明】

view_name:表示要更改的视图名称。

column:表示一列或多列的名称,用逗号分开,将成为给定视图的一部分。

n:表示column可重复n次的占位符。

AS:表示视图要执行的操作。

select_statement:表示定义视图的SELECT 语句。

WITH CHECK OPTION:表示强制视图上执行的所有数据修改语句都必须符合由定义视图的select_statement设置的准则。

(4) 通过视图进行数据查询和数据更新操作

视图一旦定义好了以后,用户就可以象对基本表一样对视图进行查询操作。除此以外,还可以通过视图对其基本表中的数据进行更新操作,包括添加、修改和删除数据等。

二、实验目的

1.加深对数据视图作用的理解;

2.掌握应用视图有选择性的查看所需数据的方法;

3.掌握通过视图更改数据表中数据的方法;

4.掌握创建视图的实现方法;

5.掌握更新视图的实现方法及理解视图更新操作的有关规定;

6.掌握删除视图的实现方法。

相关文档
最新文档