1 / 11
文档名称:

数据库系统大题.doc

格式:doc   大小:135KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据库系统大题.doc

上传人:2982835315 2021/5/8 文件大小:135 KB

下载得到文件列表

数据库系统大题.doc

文档介绍

文档介绍:①一个学生可选修多门课,一门课有若干学生选修;
②一个教师可讲授多门课,一门课只有一个教师讲授;
③一个学生选修一门课,仅有一个成绩。
要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;
成绩
教师编号
教师姓名
学生
选修
m
课程
教师
讲授
n
n
1
学号
姓名
课程号
课程名
解答:
1、设有如下所示的关系S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句:
(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。
(2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。
(3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。
(4)检索”李强”同学不学课程的课程号(C#)。
(5)检索至少选修两门课程的学生学号(S#)。
(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。
(7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。
(8)检索选修课程号为k1和k5的学生学号(S#)。
(9)检索选修全部课程的学生姓名(SNAME)。
(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。
(11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。
解:本题各个查询语句对应的关系代数表达式表示如下:
(1). ∏C#,CNAME(σTEACHER=‘程军’(C))
(2). ∏S#,SNAME(σAGE>21∧SEX=”男”(C))
(3). ∏SNAME{s [∏S#,C#(sc)÷∏C#(σTEACHER=‘程军’(C))]}
(4). ∏C#(C)- ∏C#(σSNAME=‘李强’(S)SC)
(5). ∏S#(σ[1]=[4]∧[2]≠[5] (SC× SC))
(6). ∏C#,CNAME(C (∏S#,C#(sc)÷∏S#(S)))
(7). ∏S#(SC∏C#(σTEACHER=‘程军’(C)))
(8). ∏S#,C#(sc)÷∏C#(σC#=’k1’∨ C#=’k5’(C))
(9). ∏SNAME{s [∏S#,C#(sc)÷∏C#(C)]}
(10). ∏S#,C#(sc)÷∏C#(σS#=’2’(SC))
(11). ∏S#,SNAME{s [∏S#(SCσCNAME=‘C语言’(C))]}
2、关系R和S如下图所示,试计算R÷S。
R
A
B
C
D
a
b
c
d
a
b
e
f
a
b
h
k
b
d
e
f
b
d
d
l
c
k
c
d
c
k
e
f
S
C
D
c
d
e
f
1、设有如下关系表R:
R(No,NAME,SEX,AGE,CLASS)
主关键字是NO
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。
写出实现下列功能的SQL语句。
①插入一个记录(25,“李明”,“男”,21,“95031”);
②插入“95031”班学号为30、姓名为“郑和”的学生记录;
③将学号为10的学生姓名改为“王华”;
④将所有“95101”班号改为“95091”;
⑤删除学号为20的学生记录;
⑥删除姓“王”的学生记录;
答案:
①INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”)
②INSERT INTO R(NO,NAME,CLASS) VALUES(30,“郑和”,“95031”)
③UPDATE R SET NAME=“王华”WHERE NO=10
④UPDATE R SET CLASS=“95091”WHERE CLASS=“95101”
⑤DELETE FROM R WHERE NO=20
⑥DELETE FROMR WHERE NAME LIKE“王%”
2、设学生课程数据库中有三个关系:
学生关系S(S#,SNAME,AGE,SEX)
学****关系SC(S#,C#,GRADE)
课程关系C(C#,CNAME)
其中S#、C#、SN