河北经贸数据库原理实验五

河北鸡毛大学

数据库原理实验五

实验名称

视图和数据控制

实验目的

1.掌握分别用 SQL Server 企业管理器和查询分析器创建、删除、查询、更新视图的方法。 2.熟练掌握创建、删除、查询和更新视图的 SQL 语句的用法,加深理解视图的四种用途。 3. 熟练掌握数据控制方法, 学习实体完整性的建立,以及实践违反实体完整性的结果。

实验仪器

PC

实验内容

1.(1)打开查询分析器,在查询窗格中输入下列SQL语句,然后运行,输出结果。

CREATE VIEW CS_Student

  AS

  SELECT Sno,Sname,Ssex,Sage

  FROM Student

  WHERE Sdept='CS'

  WITH CHECK OPTION

以下操作只需写出查询分析器方法的SQL操作语句。

(2) 建立计算机系选修了1号课程的学生的视图CS_S1。

CREATE VIEW CS_S1

AS

SELECT

CS_STUDENT.Sno,Sname,Sage,Cno,Grade

FROM CS_STUDENT,SC

WHERE CS_STUDENT.Sno=SC.Sno AND Cno='1';

  1. 删除视图CS_S1。

DROP VIEW CS_S1;

(4) 在计算机系学生视图CS_Student中找出选修了“数据库”课程且成绩在90分以上的学生。

SELECT CS_Student.Sno

FROM CS_Student,SC,COURSE

WHERE CS_Student.Sno=SC.Cno AND 

  SC.Cno=COURSE.Cno AND

  Cname='数据库' AND

  Grade>=90;

(5) 向计算机系学生视图CS_Student中插入一个新生记录,其中学号为95030,姓名为张三,年龄为20,男生。

INSERT

INTO CS_Student(Sno,Sname,Sage,Ssex)

VALUES ('95030','张三',20,'M')

(6) 在计算机系学生视图CS_Student中,将学号为95030的学生姓名改为“李四”。

UPDATE CS_Student

SET Sname='李四' 

WHERE Sno='95030'

(7) 删除计算机系学生视图CS_Student中学号为95030的学生记录。

DELETE

FROM CS_Student

WHERE Sno='95030';

2.在供应系统 GYXT 数据库中进行如下操作:

(1) 创建视图 VSJ,它记录了给“三建”工程项目的供应零件的情况,包括供应商号、零件号和零件数量。

CREATE VIEW VSJ

AS

SELECT SNO, PNO,QTY

FROM J,SPJ

WHERE J.JNO=SPJ.JNO AND JNAME='三建';

(2) 对 VSJ 视图查询 S1 供应商的供货情况。

SELECT *

FROM VSJ

WHERE SNO='S1';

思考题:视图的四种用途是什么?

  1. 视图能简化用户的操作
  2. 视图对重构数据提供了一定程度的逻辑独立性
  3. 视图能对机密数据提供安全防护
  4. 适当利用视图可更清晰的表达查询

3. 数据控制

(1)在数据库tempdbforintegrity中建立表Stu_Union,包括sno(char(5)),sname(char(8)),ssex(char(1)),sage(int),sdept(char(20))

五个列,对 sno 进行主键约束,并且在没有违反实体完整性的前提下插入并更新一条记录

CREATE TABLE Stu_Union(sno char(5),

sname char(8) PRIMARY KEY,

ssex char(1),

sage int,

sdept char(20));

INSERT

INTO Stu_Union(sno,sname,ssex,sage,sdept)

VALUES ('1001','张三','M',19,'CS');

UPDATE Stu_Union

SET sage='20'

WHERE sno='1001';

(2)创建登录名 work 的用户,为其赋予数据库

 

实验结论

CREATE VIEW 视图名 [(<列名>[,<列名>]…)]AS <子查询>[ WITH CHECK OPTION]

成绩评定

教师签字

                   年    月    日

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值