内容发布更新时间 : 2025/1/4 16:08:48星期一 下面是文章的全部内容请认真阅读。
职工(职工号,姓名,工产编号,聘期,工资) 生产(工产编号,产品编号,计划数量)
(3)每个关系模式的主码、外码如下: 工厂:主码是工产编号; 产品:主码是产品编号;
职工:职工号,外码是工厂编号; 生产:主码是(工产编号,产品编号), 外码是工产编号、产品编号。
2. 关系模式如下:(10分)
学生S(SNO, SN, SEX, AGE)
课程C(CNO, CN, PCNO) PCNO为直接先行课
选课SC(SNO,CNO,G) G为课程考试成绩
(1)用关系代数及SQL语言写出查询语句,查询所有学生都选修的课程名CN。
(2)用关系代数及SQL语言写出查询语句,查询“DB”课成绩在90分以上的学生的姓名。
(3)将选修课程“DB”的学生学号,姓名建立视图SDB。
(4)在学生选课关系SC中,把英语课的成绩提高10%。
答案:
(1)ЛCN (ЛCNO,SNO(SC)÷ЛSNO(S) ЛCNO,CN(C)) (1分)
SELECT CN
FROM C
WHERE NOT EXISTS
(SELECT *
FROM S
WHERE NOT EXISTS
(SELECT *
FROM SC
WHERE SNO=S.SNO AND CNO=C.CNO));(2分)
(2)ЛSN(S σG>90(SC) σCN=’DB’(C) )(1分)
SELECT SN
FROM S, SC, C
WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND CN=’DB’AND G>90;(2分)
(3)CTEATE VIEW SDB
AS
SELECT SNO, SN
FROM S, SC, C
WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND C.CN=’DB’;(2分)
(4)UPDATE SC
SET G=1.1*G
WHERE CNO IN
(SELECT CNO
FROM C
WHERE CN=’英语’);(2分)