.
湖南城市学院数据库原理应用题题库
二、应用题
1.一图书馆借阅书刊,请你画出书刊、读者及借阅三者间的E-R模型。 借阅日期 出版日期 姓名 作者 性别 n m 借阅 读者 书刊 书名 年龄 编号 归还日期 编号 2.设有关系R和S,计算:
(1)R1=R-S; (2)R2=R∪S; (3)R3=R∩S; (4)R4=R×S R S A B C A B C a b c b a f b a f d a f c b d
3.现有关系数据库如下:
学生(学号,姓名,性别,专业,奖学金) 课程(课程号,名称,学分) 学习(学号,课程号,分数)
用关系代数表达式实现下列1—4小题:
1.检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数。 П学号,姓名,课程名,分数(σ专业='英语'(学生∞学习∞课程))
2.检索“数据库原理”课程成绩高于90分的所有学生的学号、姓名、专业和分数;
П学号,姓名,专业,分数(σ分数>90∧名称='数据库原理'(学生∞学习∞课程))
3.检索不学课程号为“C135”课程的学生信息,包括学号,姓名和专业; П学号,姓名,专业(学生)-П学号,姓名,专业(σ课程号='C135'(学生∞学习))
4.检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业;
П学号,姓名,专业(学生)-П学号,姓名,专业(σ分数<60(学生∞学习))
2、学生-课程数据库(24分)
学生表:Student(Sno,Sname,Ssex,Sage,Sdept) 课程表:Course(Cno,Cname,Cpno,Ccredit) 学生选课表:SC(Sno,Cno,Grade) 用SQL语句实现:
'.
.
(1)为学生-课程数据库中的Course表建立索引,按课程号升序建唯一索引。
(2)删除Course表的索引。
(3)查询全体学生的姓名、学号、所在系。
(4)查询年龄不在20~23岁之间的学生姓名、系别和年龄。 (5)查询所有姓刘学生的姓名、学号和性别。 (6)求各个课程号及相应的选课人数。
(7)查询每个学生的学号、姓名、选修的课程名及成绩。
(8)将所有学生的年龄增加1岁。
(1)CREATE INDEX Coucno ON Course(Cno) (2)DROP INDEX ‘Course . Coucno’ (3)SELECT Sname,Sno,Sdept FROM Student (4)SELECT Sname, Sdept, Sage FROM Student
WHERE Sage NOT BETWEEN 20 AND 23 (5)SELECT Sname,Sno,Ssex FROM Student
WHERE Sname LIKE '刘%' (6)SELECT Cno, COUNT(Sno) FROM SC
GROUP BY Cno
(7)SELECT Student.Sno,Sname,Cname,Grade FROM Student,SC,Course WHERE Student.Sno = SC.Sno and SC.Cno = Course.Cno; (8)UPDATE Student
SET Sage= Sage+1;
仓库 m n 器件 存放 保管 1 工作 n 职工 m n '.
.
1、某商店管理涉及商店、商品和职工三个实体,它们分别具有下列属性:
商店:商店编号,店名,店址,店经理 商品:商品编号,商品名,单价,产地 职工:职工编号,职工名,性别,工资 这些实体间的联系如下:百货公司管辖若干个连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于一家商店。职工参加某商店工作有开始时间,商店销售商品的有月销售量。 ①请画出商店、商品和职工的E—R 图。
②将该E—R 图转换为关系数据模型。
关系模式集:商店模式(商店编号,店号,店址,店经理)
商品模式(商品编号,商品名,单价,产地)
职工模式(职工编号,职工名,性别,工资,商店编号,开始时间) P1模式(商店编号,商品编号,月销售量)
2、设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。设车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有个聘期;车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队;司机与车辆之间存在着“使用”联系,司机使用车辆有使用日期和公里数两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。
(1)试画出ER图,并在图上注明属性、联系类型、实体标识符; (2)将ER图转换成关系模型,并说明主键和外键。 (1)ER图如图所示。
'.
.
牌照号 车队号 车队名 1 拥有 N 车辆 厂家 M 车队 1 聘期 聘用 N 使用 出厂日使用日司机编公里数 N 司机 姓名 电话 (2)转换成的关系模型应具有4个关系模式:
车队(车队号,车队名)
车辆(牌照号,厂家,生产日期,车队号) 司机(司机编号,姓名,电话,车队号,聘期) 使用(司机编号,车辆号,使用日期,公里数)
4、现有某个应用,涉及到两个实体集,相关的属性为:
实体集R(a,b,c,d),其中a为码 实体集S(e,f,g),其中e为码
从实体集R到S存在多对一的联系,联系属性是h。 (1)设计相应的关系数据模型; R (a, b,c,d,e,h) S(e, f, g)
(2)如果将上述应用的数据库设计为一个关系模式,如下: RS(a,b,c,d,e,f,g,h),指出该关系模式的码。 码是ae
(3)假设上述关系模式RS上的全部函数依赖为:b→d,指出上述模式RS最高满足第几范式?(在1NF~BCNF之内)为什么?
RS满足2NF,不满足3NF
因为存在非主属性d对码ae的传递依赖,没有部分函数依赖。 (4)如果将上述应用的数据库设计为三个关系模式,如下: R1 (a,b,c,d) R2 (e,f,g) R3 (a,e,h)
关系模式R2是否一定满足第3范式?为什么? 不一定。
因为R3中有两个非主属性f和g,有可能存在函数依赖f→g,则出现传递依赖e→f、f→g。 1、下列关系最高属于第几范式,并解释其原因。 (1)R(ABCD),F={B→D,AB→C}
'.
.
码为AB,存在非主属性D对码的部分函数依赖,R为1NF。 (2)R(ABCDE),F={AB→CE,E→AB, C→D}
码为AB、E,存在非主属性D对码的传递函数依赖,R为2NF。 (3)R(ABCD),F={B→D,D→B, AB→C}
码为AB,存在非主属性D对码的部分函数依赖,R为1NF。 (4)R(ABC),F={A→B,B→A,A→C}
码为A、B,关系中每一个函数依赖的决定子都是候选码,R为BCNF。
'.
相关推荐: