(1)理解视图的概念。
(2)掌握创建视图、测试、加密视图的方法。
(3)掌握更改视图的方法。
(4)掌握用视图管理数据的方法。
PC + Windows + SQL Server
1.创建视图
(1)创建一个名为stuview1的水平视图,从Student_info数据库的student表中查询出所有男学生的资料。并在创建视图时使用with check option。
CREATE VIEW STUVIEW1
AS
SELECT *
FROM Student
WHERE Sex='男'
with CHECK OPTION
(2)创建一个名为stuview2的投影视图,从数据库Student_info的Course表中查询学分大于3的所有课程的课程号、课程名、总学时,并在创建时对该视图加密。
CREATE VIEW STUVIEW2
WITH ENCRYPTION
AS
SELECT CNO,CNAME,Total_perior
FROM Course
WHERE Credit>3
WITH CHECK OPTION
(3)创建一个名为stuview3的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。
CREATE VIEW STUVIEW3
AS
SELECT Student.Sno,Cno,Grade
FROM SC,Student
WHERE Student.Sno=SC.Sno
AND Classno='051'
AND Sex='女'
2.查询视图的创建信息及视图中的数据
(1)查看视图stuview1的创建信息。
方法:通过系统存储过程sp_help查看。
(2)查看视图的定义脚本。
方法:通过系统存储过程sp_helptext。
EXEC sp_helpTEXT STUVIEW1
3.修改视图的定义
修改视图stuview2,使其从数据库Student_info的Course表中查询总学时大于60的所有课程的课程号、课程名、学分。
ALTER VIEW STUVIEW2
WITH ENCRYPTION
AS
SELECT CNO,CNAME,CREDIT
FROM Course
WHERE Total_perior>60
4.视图的更名与删除
(1)将视图stuview3更名为stuv3。
SP_RENAME STUVIEW3,STUV3
(2)将视图stuv3删除。
DROP VIEW STUV3
5.管理视图中的数据
(1)从视图stuview1查询出班级为“051”、姓名为“张虹”的资料。
SELECT *
FROM STUVIEW1
WHERE CLASSNO='051'AND SNAME='张虹'
(2)向视图stuview1中插入一行数据。学号:20110005,姓名:许华,班级:054,性别:男,家庭住址:南京,入学时间:2011/09/01,出生年月:1983/01/09。
INSERT
INTO STUVIEW1
VALUES('20110005','许华','男','1983/01/09','054','2011/09/01','南京','计算机类','200413')
原Student表中的内容有何变化?
原表中也插入相应的信息
思考:如向视图stuview1中插入一行数据。学号:20110006,姓名:赵静,班级:054,性别:女,家庭住址:南京,入学时间:2011/09/01,出生年月:1983/11/09。会出现什么样的结果?原Student表中的内容有何变化?答:
无变化,stuview1中要求sex=‘男’
(3)修改视图stuview1中的数据。
将stuview1中054班、姓名为“许华”同学的家庭地址改为“扬州市”。
UPDATE STUVIEW1
SET HOME_ADDR='扬州市'
WHERE CLASSNO='054'AND SNAME='许华'
(4)删除视图stuview1中班级为054、姓名为“许华”的同学的记录。
DELETE
FROM STUVIEW1
WHERE CLASSNO='054'AND SNAME='许华'
原Student表中的内容有何变化?
原表中许华的相关信息也被删除
本文仅供参考学习,全文复制粘贴者后果自负;
都是基础知识,多练多学,不要做思想的巨人行动的矮子
推荐歌曲:冷雨夜