实验5视图的创建与使用教学文案

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

实验5视图的创建与

使用

云南大学职业与继续教育学院

实验报告

Yunnan University

个人成绩

学号姓名成绩

学期: 2017秋季学期

课程名称: 数据库原理及应用实验

任课教师:

姓名:

学号:

年级:

完成时间: 2017 年 10月 17 日

实验名称:视图的创建与使用

一、实验目的:

(1)理解视图的概念。

(2)掌握创建视图、测试、加密视图的方法。

(3)掌握更改视图的方法。

(4)掌握用视图管理数据的方法。

二、实验步骤及内容

1.创建视图

(1)创建一个名为stuview1的水平视图,从Student_info数据库的student 表中查询出所有男学生的资料。并在创建视图时使用with check option。

(2)创建一个名为stuview2的投影视图,从数据库Student_info的Course表中查询学分大于3的所有课程的课程号、课程名、总学时,并在创建时对该视图加密。

(3)创建一个名为stuview3的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。

(4)创建一个名为stuview4的视图,能检索出每位选课学生的学号、姓名、总成绩。

2.查询视图的创建信息及视图中的数据

(1)查看视图stuview1的创建信息。

方法1:通过系统存储过程sp_help查看。

方法2:通过查询表sysobjects。

(2)查看视图的定义脚本

方法1:通过系统存储过程sp_helptext。

方法2:通过查询表sysobjects和表syscomments。

(提示:视图的名称保存在表sysobjects的name列,定义脚本保存在表syscomments的text列)。

(3)查看加密视图stuview3的定义脚本。

3.修改视图的定义

修改视图stuview2,使其从数据库Student_info的Course表中查询总学时大于60的所有课程的课程号、课程名、学分。

4.视图的更名与删除

(1)将视图stuview4更名为stuv4。

(2)将视图stuv4删除。

5.管理视图中的数据

(1)从视图stuview1查询出班级为“051”、姓名为“张虹”的资料。

(2)向视图stuview1中插入一行数据。学号:20110005,姓名:许华,班级:054,性别:男,家庭住址:南京,入学时间:2011/09/01,出生年月:1983/01/09。

原Student表中的内容有何变化?

答:Student 表中已有“许华”的信息

思考:如向视图stuview1中插入一行数据。

学号:20110006,

姓名:赵静,

班级:054,

性别:女,

家庭住址:南京,

入学时间:2011/09/01,

出生年月:1983/11/09。

会出现什么样的结果?

答:不能插入。因为stuview1的水平视图,是Student__info数据库的Student表中查询出的所有性别为“男”的学生资料,插入的新数据性别为“女”,所以不能执行。原因是目标视图指定了WITH CHECK OPTION,而该操作的果行又不符合CHECK OPTION 约束。

原Student表中的内容有何变化?

答:Student 表中无“赵静”的信息。

(3)修改视图stuview1中的数据。

将stuview1中054班、姓名为“许华”同学的家庭地址改为“扬州市”。

原Student表中的内容有何变化?

答:家庭地址由“南京”变为“扬州市”。

(4)删除视图stuview1中班级为054、姓名为“许华”的同学的记录。

原Student表中的内容有何变化?

三、实验总结:

表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。视图的建立和删除只影响视图本身,不影响对应的基本表。在进行视图的跟新操作的时候,要注意该跟新条目的约束条件,例如:在对学生的性别进行跟新的时候,只能将“男”跟新成“女”,或者将“女”跟新为“男”,而不能跟新成其他的字段。

指导教师签名:

相关文档
最新文档