- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验五 视图的创建与使用
一、实验目的
(1)理解视图的概念。
(2)掌握创建视图、测试、加密视图的方法。
(3)掌握更改视图的方法。
(4)掌握用视图管理数据的方法。
二、实验内容
1.创建视图
(1)创建一个名为stuview2的水平视图,从数据库Student_info的Student表中查询出性别为“男”的所有学生的资料。并在创建视图时使用with check option。(注:该子句用于强制视图上执行的所有修改语句必须符合由Select语句where中的条件。)
create view stuview2
as
select Sno,Sname,Sex,Birth,Classno,Entrance_date,Homeaddr,Sdept,Postcode
from Studentwhere Sex=男
with check optioncreate view stuview3
with ENCRYPTION
as
select Cno,Cname,Total_perior
from Coursewhere Credit3
with check option
(3)创建一个名为stuview4的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。
create view stuview4
as
select StudentSno,Cno,Grade
from StudentSCwhere StudentSno=SCSno
and Classno=051
and Sex=女
(4)创建一个名为stuview5的视图,能检索出每位选课学生的学号、姓名、总成绩。
create view stuview5(Sno,Sname,SumGrade)
as
select SCSno,Sname,SUM(Grade)
from SCStudentwhere SCSno=StudentSno
group by SCSno,Sname
2.查询视图的创建信息及视图中的数据
(1)查看视图stuview2的创建信息。
a.通过系统存储过程sp_help查看
exec sp_help stuview2
b.通过查询表sysobjectsselect *
from sysobjects
where name=stuview2
(2) 通过查看视图的定义脚本。
a.通过系统存储过程sp_helptext
exec sp_helptext stuview2
b.通过查询表sysobjects和表syscomments
(提示:视图的名称保存在表sysobjects的name列,定义脚本保存在表syscomments的text列)
(
select text
from sysobjects,syscomments
where name=stuview2
and sysobjects.id=syscomments.id
3)查看加密视图stuview3的定义脚本。
exec sp_helptext stuview3
3.修改视图的定义
(1)修改视图stuview3使其从数据库Student_info的Student表中查询总学时大于60的所有课程的课程号、课程名、学分。(提示:若视图原具有加密保护,修改视图时若未加with encryption子句,则修改后的视图不再加密。)
alter view stuview3
with ENCRYPTION
as
select Cno,Cname,Credit
from Coursewhere Total_perior60
4.视图的更名与删除
1)用系统存储过程sp_rename将视图stuview4更名为stuv4。
sp_rename stuview4,stuv4
2)将视图stuv4删除。
drop view stuv4
5.管理视图中的数据
1)从视图stuview2查询出班级为“051”、姓名为“张虹”的资料。
select *
from stuview2
where Classno=051 and Sname=张虹insert
into stuview2(Sno,Sname,Classno,Sex,Homeaddr,Entrance_date,Birth,Sdept,Postcode)
values赵小林,054,男,南京,2011-09-01,199
文档评论(0)