在xscjgl上进行操作
习题作业
(1)创建一个显示学生的学号,姓名,课程名,成绩的视图v1
CREATE VIEW v1 AS SELECT b.`学号`,b.`姓名`,c.`课程名`,a.`成绩` FROM xs_kc a,xs b,kc c
WHERE a.`学号`=b.`学号` AND a.`课程号`=c.`课程号`;
(2)创建一个显示学生成绩90分以上学生的学号,课程名,成绩,学分视图v2
CREATE VIEW v2 AS SELECT b.`学号`,c.`课程名`,a.`成绩`,a.学分 FROM xs_kc a,xs b,kc c
WHERE a.`学号`=b.`学号` AND a.`课程号`=c.`课程号` AND a.成绩>=90;
(3)创建一个显示“计算机”专业的学生名单的视图v3
CREATE VIEW v3 AS SELECT DISTINCT b.`学号`,b.`姓名` FROM xs_kc a,xs b,kc c
WHERE a.`学号`=b.`学号` AND a.`课程号`=c.`课程号` AND b.`专业名`="计算机";
(4)创建一个没有被学生选修的课程名单的视图v4
CREATE VIEW v4 AS SELECT * FROM kc WHERE 课程号 NOT IN
(SELECT c.`课程号` FROM xs_kc a,xs b,kc c WHERE a.`学号`=b.`学号` AND a.`课程号`=c.`课程号`);
(5)创建一个没有参加过任何选修课程学生的名单的视图v5
CREATE VIEW v5 AS SELECT * FROM xs WHERE 学号 NOT IN
(SELECT b.`学号` FROM xs_kc a,xs b,kc c WHERE a.`学号`=b.`学号` AND a.`课程号`=c.`课程号`);
(6)创建一个显示学生的学号,姓名,性别,出生日期的视图v6
CREATE VIEW v6 AS SELECT 学号,姓名,性别,出生时间 FROM xs;
(7) 修改视图v1将显示学生的学号,姓名,课程名,成绩,学分
ALTER VIEW v1 AS SELECT b.`学号`,b.`姓名`,c.`课程名`,a.`成绩` ,a.学分
FROM xs_kc a,xs b,kc c WHERE a.`学号`=b.`学号` AND a.`课程号`=c.`课程号`;
(8) 修改视图v6中学生学号为“081101”的出生日期为“1990-2-22”
UPDATE v6 SET 出生时间="1990-2-22" WHERE 学号="081101";
(9) 在视图v6中插入学生本人的信息
INSERT INTO v6(学号,姓名,性别,出生时间) VALUES ("19","张三",1,"2000-12-4");
(10) 在视图v6中删除学生本人的信息
DELETE FROM v6 WHERE 学号="19";
(11) 使用DROP语句删除视图v6
DROP VIEW v6;