实验5 数据视图

您所在的位置:网站首页 查询学生出生年份的软件 实验5 数据视图

实验5 数据视图

2024-05-27 07:07| 来源: 网络整理| 查看: 265

实验目的: 熟练掌握SQL Server查询分析器的使用方法,加深对标准SQL视图语句的理解。 实验内容: 基于实验一创建的教学管理JXGL数据库,实现数据视图操作。 实验步骤: 在教学管理JXGL数据库中进行如下操作,写出对应的SQL语句:

1、 建立信息系学生视图IS1(sno,sname,ssex,sage)。

CREATE VIEW IS1 AS select sno,sname,ssex,sage from student2 where sdept='IS';

2、 建立信息系学生视图IS2(sno,sname,ssex,sage),并要求在进行修改和插 入操作时仍需保证该视图只有信息系学生(验证SQL Server中是否实现了with check option)。

CREATE VIEW IS2 AS select sno,sname,ssex,sage from student2 where sdept='IS' with check option;

执行失败,验证成功

insert into IS2 values('90112','你好','男','13')

3、 建立信息系选修了“数据库”的学生视图IS3(sno,sname, grade)。

create view IS3 AS select student2.sno,sname,grade from student2,ssc where student2.sno=ssc.sno and sdept='IS' and cno in(select cno from course where cname='数据库')

4、 基于视图IS3建立信息系选修了“数据库”且成绩在90分以上的学生的视图IS4(sno,sname, grade)。

create view IS4 AS select sno,sname,grade from IS3 where grade>90

5、 建立一个反映学生出生年份的视图S_Birth(sno,sname, birthday)。

create view BIRTH(sno,sname,sbirth) AS select sno,sname,2014-Sage from student2

6、 建立课程的课程号和该课程最高成绩的视图S_Max(cno,max_grade)。

create view S_Max(cno,max_grade) AS select cno,max(grade) from ssc group by cno

7、 删除视图IS3,观察IS4是否级联删除。

drop view IS3

8、 查询信息系年龄小于19岁的同学的学号、姓名和年龄。

select sno,sname,sage from IS2 where sage=90

11、 对IS1录入数据(95006,李明,M,19),对IS2录入数据(95007,张兰,F,19),并显示IS1,IS2和student内容(验证SQL Server中是否实现了with check option)。

insert into IS2 values('90112','张兰','男','13') insert into IS1 values('90006','你好','男','13')

第二条成功,第一题条失败 12、 把信息系男同学的年龄置0。

update IS1 set sage=0 where ssex='男'

13、 把1号课的最高成绩置100(验证这条语句能否执行,如果不能,原因是什么?)。

update S_Max set max_grade=100 where cno=1 不能执行,因为包含派生域或者常量域

14、 删除信息系的名字叫张兰的同学。

delete from is2 where sname='张兰'


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3