SQL数据库实验报告 视图管理

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

南京信息工程大学实验(实习)报告

实验(实习)名称视图管理实验(实习)日期12月9日得分指导教师系计算机系专业网络工程年级班次班姓名学号

一.实验目的

1.掌握创建视图的S QL 语句的用法。

2.掌握使用企业管管理器创建视图的方法。

3.掌握使用创建视图向导创建视图的方法。

4.掌握查看视图的系统存储过程的用法。

5.掌握修改视图的方法。

6.熟悉和掌握对数据表中视图的查询操作和S QL 命令的使用;

7.熟悉和掌握对数据表中视图的更新操作和 SQL 命令的使用,并注意视图更新与基本表更新的区别与联系

8.学习灵活熟练的进行视图的操作,认识视图的作用

二.实验内容

1. 创建视图

(1)使用企业管理器创建视图

①在E DUC 库中以“student”表为基础,建立一个名为“V_计算机系学

生”的视图。在使用该视图时,将显示“student”表中的所有字段.

(2) 使用S QL 语句创建视图

①在查询分析器中建立一个每个学生的学号、姓名、选修的课名及成绩的

视图S_C_GRADE;

②建立一个所有计算机系学生的学号、选修课程号以及平均成绩的视图COMPUTE_AVG_GRADE;

2.修改视图

(1) 使用企业管理器修改视图

在企业管理器中将视图 COMPUTE_AVG_GRADE 中改成建立在数学系的学生学

号、选修课程号以及平均成绩的视图。

(2) 使用S QL 语句修改视图

①在查询分析器中使用更改视图的命令将上面建立的视图“V_计算机系学

生”更名为“V_计算机系男生”。

3. 删除视图

(1)使用企业管理器删除视图

用企业管理器删除视图“V_计算机系学生”

(2)使用S QL 语句删除视图

用S QL 语句删除视图C OMPUTE_AVG_GRADE;

4.定义视图

在E DUC 数据库中,已S tudent Course 和S tudent_course

下视图定义

1. 定义计算机系学生基本情况视图V_Computer;

2. 将S tudent Course 和S tudent_course 表中学生的学号,姓名,课程号,课程名,成绩定义为视图V_S_C_G

3.将各系学生人数,平均年龄定义为视图V_NUM_AVG

4.定义一个反映学生出生年份的视图V_YEAR

5.将各位学生选修课程的门数及平均成绩定义为视图V_AVG_S_G

6.将各门课程的选修人数及平均成绩定义为视图V_AVG_C_G

5.使用视图

1.查询以上所见视图结果。

2.查询平均成绩为90 分以上的学生学号、姓名和成绩;

3.查询各课成绩均大于平均成绩的学生学号、姓名、课程和成绩;

4.按系统计各系平均成绩在80 分以上的人数,结果按降序排列;

6.修改视图

1.通过视图V_IS,分别将学号为“S1”和“S4”的学生姓名更改为“S1_MMM”,”

S4_MMM”并查询结果;

2.通过视图V_IS,新增加一个学生记录 ('S12','YAN XI',19,'IS'),并

查询结果

3.通过视图V_IS,新增加一个学生记录 ('S13','YAN XI',19,'MA'),并

查询结果

4.通过视图V_IS,删除学号为“S12”和“S3”的学生信息,并查询结果

5.要通过视图V_S_C_G,将学号为“S12”的姓名改为“S12_MMM”

,是否可

以实现?并说明原因

6.要通过视图V_AVG_S_G,将学号为“S1”的平均成绩改为90 分,是否可

以实现?并说明原因

三.实验步骤(详细)

1.创建视图

(1)使用企业管理器创建视图

①在E DUC 库中以“student”表为基础,建立一个名为“V_计算机系学生”的视图。在使用该视图时,将显示“student”表中的所有字段.

步骤1:展开E DUC 子目录-右键点击“视图”-选择”新建视图”

步骤2:选择添加s tudent

步骤3:选择s tudent 所有字段,关闭保存为“V_计算机系学生”,右键

点击视图“V_计算机系学生”,选择打开视图

(2) 使用S QL 语句创建视图

①在查询分析器中建立一个每个学生的学号、姓名、选修的课名及成绩的

视图S_C_GRADE;

步骤1:视图-模板资源管理器-VIEW-Create View-

步骤2:根据模板输入代码:

USE EDUC

GO

IF object_id(N'S_C_GRADE', 'V') IS NOT NULL

DROP VIEW S_C_GRADE

GO

CREATE VIEW S_C_GRADE AS

SELECT student.sno,sname,cname,score

FROM student,course,student_course

WHERE student.sno=student_course.sno

②建立一个所有计算机系学生的学号、选修课程号以及平均成绩的视图

COMPUTE_AVG_GRADE;

2.修改视图

(1) 使用企业管理器修改视图

在企业管理器中将视图 COMPUTE_AVG_GRADE 中改成建立在数学系的学生学号、选修课程号以及平均成绩的视图。

步骤:右键点击视图名称,选择“修改”

(2) 使用S QL 语句修改视图

在查询分析器中使用更改视图的命令将上面建立的视图“V_计算机系学生”更名为“V_计算机系男生”。

步骤:新建查询-输入:sp_rename V_计算机系学生, V_计算机系男生

3.删除视图

(1)使用企业管理器删除视图

用企业管理器删除视图“V_计算机系学生”

步骤:右键点击所要删除的视图名称,选择“删除”

(2)使用S QL 语句删除视图

用S QL 语句删除视图C OMPUTE_AVG_GRADE;

步骤:新建查询-输入代码:drop view view_student

4.定义视图

在E DUC 数据库中,已S tudent Course 和S tudent_course 表为基础完成一

下视图定义

1.定义计算机系学生基本情况视图V_Computer;

步骤:新建查询-输入代码:

CREATE VIEW V_COMPUTER

AS

相关文档
最新文档