数据库系统原理复习题(九)——综合练习(简答题)
1.设教学管理数据库模式如下:
学生关系模式:S(SNO, SNAME, AGE, SDEPT)
学习关系模式:SC(SNO, CNO, SCORE)
课程关系模式:C(CNO, CNAME,TNAME)
其中SDEPT是学生所在系,TNAME是教师姓名。写出符合下列要求的SQL语句:
(1)检索软件工程系全体学生的姓名和学号;
(2)统计每一门课程的平均成绩;
(3)查询教过‘王林’同学的教师名;
(4)定义表S (8分)
答:
(1):select SNO, SNAME from S where SDEPT ='软件工程系';
(2):select AVG(SCORE),CNO from SC group byCNO;
(3):select TNAME from S,SC,C where SNAME ='王林' and S.SNO = SC.SNO and SC.CNO = C.CNO;
(4):create table S(
SNO int,
SNAME varchar(20),
AGE int,
SDEPT varchar(30),
primary key (SNO)
);
参考答案:
设教学管理数据库模式如下:
学生关系模式:S(SNO, SNAME, AGE, SDEPT)
学习关系模式:SC(SNO, CNO, SCORE)
课程关系模式:C(CNO, CNAME,TNAME)
其中SDEPT是学生所在系,TNAME是教师姓名。写出符合下列要求的SQL语句:
(1)检索软件工程系全体学生的姓名和学号;
Select sno,sname From S
Where Sdept=’软件工程系’;
(2)统计每一门课程的平均成绩;
Select Cno,Avg(SCORE) From SC
GroupBy Cno;
(3)查询教过‘王林’同学的教师名;
Select Tname from s,c,sc
where s.sno=sc.sno and sc,cno=c.cno andsname=’王林’
(4)定义表S
CREATE TABLE S
(SNO CHAR(2) Primary Key,
SNAME VARCHAR(8),
AGE INT,
SDEPT VARCHAR(8) );
当前状态:已作答
2.请完成下列关于数据库设计的概念设计和逻辑设计:
设有一教学管理数据库,其涉及到的实体集有:学生、课程、教师、班级。
(1)给每个实体设计3个属性,并标出键码。
(2)假如每门课程只有一位任课教师;每位教师只上一门课程。而其他的语义以我校现实为准,确定实体集之间的联系集类型,完成该数据库的概念设计(画出ER图)。
(3)将该E-R图转换为等价的关系模型表示的数据库逻辑结构。 (8分)
答:
(1):学生:学号、姓名、年龄、性别、班级号(主键:学号外键:班级表的班级号)
课程:课程号、课程名、任课老师、学分(主键:课程号)
教师:工号、姓名、部门、年龄、性别(主键:工号)
班级:班级号、班级名、班级人数、班级班主任(主键:班级号)
参考答案:
(1)2分 (2)5分,其中:实体集2分,联系集3分
(3)3分
班级(班号,专业,系别) 学生(学号,姓名,班号)
课程(课程号,课程名,学分)教师(教师号,姓名,单位,课程号)
选修(学号,课程号,成绩)
当前状态:已作答
3.设有关系模式R(U,F), 其中:
U={A, B, C, D, E, P}, F={A->C, C->D,B->C,DE->C, CE->A}
(1)求出R的所有候选关键字;
(2)R是第几