MySQL 数据库项目式教程 习题五

将xscjgl.sql 文件内容导入xscjgl数据库,完成以下内容。

(1)创建一个显示学生的学号、姓名、课程名、成绩的视图 v1。

create view v1 as select a.学号,a.姓名,b.课程名,c.成绩 from xs a join xs_kc c on a.学号=c.学号 join kc b on c.课程号=b.课程号;

(2)创建一个显示学生成绩90分以上的学生的学号、课程名、成绩、学分视图 v2.

create view v2 as select a.学号,b.课程名,c.成绩,b.学分 from xs a join xs_kc c on a.学号=c.学号 join kc b on c.课程号=b.课程号 and b.学分=c.学分 where 成绩>=90;

(3)创建一个显示“计算机”专业的学生名单的视图 v3。

create view v3 as select distinct a.学号,a.姓名 from xs_kc c,xs a,kc b where a.学号=c.学号 and b.课程号=c.课程号 and a.专业名="计算机";

(4)创建一个没有被学生选修的课程名单的视图v4。

create view v4 as select * from kc where 课程号 not in (select b.课程号 from xs a,kc b,xs_kc c where a.学号=c.学号 and b.课程号=c.课程号);

(5)创建一个没有参加过任何选修课程学生名单的视图 v5。

create view v5 as select * from xs where 学号 not in (select a.学号 from xs a,kc b,xs_kc c where a.学号=c.学号 and b.课程号=c.课程号);

(6)创建一个显示学生的学号、姓名、性别、出生时间的视图v6。

 create view v6 as select 学号,姓名,性别,出生时间 from xs; 

(7)修改视图v1将显示学生的学号、姓名、课程名、成绩、学分。

alter view v1 as select a.学号,a.姓名,b.课程名,c.成绩,b.学分 from xs a join xs_kc c on a.学号=c.学号 join kc b on c.课程号=b.课程号;

(8)修改视图v6 中学生学号为“081101”的出生时间为“1990-2-22”。

update v6 set 出生时间='1990-2-22' where 学号='081101';

(9)在视图v6中插入学生本人的信息。

insert into v6(学号,姓名,性别,出生时间) values ('081114','张三','1','2004-6-27');

(10)在视图v6中删除学生本人的信息。

delete from v6 where 学号='081114';

(11)使用DROP 语句删除视图v6。

 drop view v6;

(12)使用可视化操作删除视图v5。d0c27272387742ef862aea5412fc065d.png

 4e3642d47b6d4cbfb6f25c091f920f55.png

以上内容仅供参考学习!

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
一、建立以下五个表: 教师表:Teacher,学生表:Student, 课程表:Course,选课表:SC,授课表:TC 二、完成以下查询: 1.查询成绩在80-90之间的记录。 2.查询至少4个同学选修的课程名。 3.查询其他系中比“信息系”所有学生年龄都大的学生名单及年龄,并按年龄降序输出: 4.查询与学生张建国同岁的所有学生的学号。姓名和系别。 5.查询选修了2门以上课程的学生名单。 6.查询至少有一门与“张建国”选课相同的学生的姓名,课程号,系别 7.查询成绩比该课程平均成绩高的学生的成绩表。 8.查询选课号为01001课程且成绩高于课程01002学生的姓名,此两门课的课程名和成绩。 9.查询所有没选修01001号课程的学生名单 10、查询每个同学各门课程的平均成绩和最高成绩,按降序输出姓名、平均成绩、最高成绩; 11、查询所有学生都选修了的课程号和课程名; 12、查询选修了991102号学生选修了的课程的学生学号和姓名。 三、使用SQL创建视图,修改记录 1.创建成绩视图SCORE_VIEW,包含学号sno,姓名sn,课程名cn,成绩score; 2.创建一个计算机系学生名单视图S_VIEW,包含学号sno,姓名sn,性别sex; 3.通过上面的视图,修改学号为991102,课程号01001的成绩记录; 4,创建一个视图,计算机系学生的成绩单score_view_CDEPT,包含学号sno,姓名sn,课程名cn,成绩score

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值