文档介绍:数据库期末试题(附答案)
《数据库原理》课程考试模拟题四
一、单项选择题(在每小题的四个备选答案中选出一个正确答案。本题共16分,每小题1分)
1. 在数据库中,下列说法( )是不正确的程名),CDEPT(开课系别),TNAME(教师名))
请用关系代数表达式写出(1)—(3):
(1)查询来自北京的学生的姓名和系别
(2)查询英语系的学生所选修课程的课程名和成绩
(3)查询选修课程包含Luo老师所授课程的学生学号
请用SQL语言描述(4)—(8):
(4)查询计算机系男同学的学号、姓名和省区
(5)查询与ZHANG同学来自同一省区的学生的学号、姓名和系别
(6)建立物联网系的学生的视图(IOT_S)
(7)查询选修课程C语言的学生学号和姓名
(8)查询每名学生的学号和平均成绩,查询结果按照平均成绩降序排列,平均成绩相同时按照学号升序排列。六、数据库设计题(本题共20分,每小题10分)
1. 一个图书借阅管理数据库中有三个实体集。一是“借书人”实体集,属性有借书证号、姓名、单位;二是“图书”实体集,属性有书号、书名、数量、位置;三是“出版社”实体集,属性有出版社名、电话、地址、邮编等。
“借书人”和“图书”间存在“借阅”联系,每人可借阅多种图书,每种图书可由多人借阅,借阅有个借书日期和还书日期;“图书”和“出版社”之间存在“出版”联系,每个出版社可出版多种图书,同一书名的图书只在一个出版社出版。
(1)试画出E-R图,并在图上指明属性和连通词。
(2)将E-R图转换成关系模型,并注明主键和外键。
2. 设有关系模式:
授课表(课程号,课程名,学分,授课教师号,教师名,授课时数)
如果规定:一门课程号有确定的课程名和学分,每名教师有确定的教师名,每门课程号可以由多名教师讲授,每名教师也可以讲授多门课程,每名教师对每门课程号有确定的授课时数。
回答以下问题:
(1)根据上述规定写出关系模式R的基本FD和候选键。
(2)关系是否存在局部函数依赖,若有,请指出,并将该关系分解到2NF。
(3)进一步将R分解成3NF模式集。
《数据库原理》课程考试模拟题四参考解答
一.单选题(每小题1分,共16分)
1-5 ACAAC 6-10 AABAD 11-15 DBDBC 16 A
二、填空题(每小题1分,共10分)
1、DBMS(数据库管理系统) 2、数据流 3、事务 4、可恢复性 5、不一致分析
6、2NF 7、关系的主键值唯一且非空 8、逻辑 9、结构冲突 10、数据流图(DFD)
三、问答题(每小题4分,共16分)
1.封锁技术中通常采用两种锁:排他锁(X锁)、共享锁(S锁)。X锁:如果事务对某个数据实现X锁,则其他事务必须要等该事务解除X锁以后才能对这个数据进行封锁。S锁:如果事务对某个数据加上S锁后,仍允许其他事务再对该数据加S锁,但在对该数据的所有S锁都解除之前绝不允许任何事务对该数据加X锁。
2.SQL的数据更新包括数据插入、数据删除和数据修改,分别用insert、delete和update语句实现。
3. 采用ER方法的数据库概念设计包括以下步骤:设计局部ER模式;设计全局ER模式;全局ER模式的优化。
4.关系数据库中的关键码包括超键、候选键、主键和外键。超键和候选键是能唯一地标识关系中的元组的属性或属性集,但候选键中不含有多余的属性;主键是从候选键中人为指定的;外键是指一个关系中包含的另一个关系的主键所对应的属性组。
四、计算题(每小题7分,共14分)
1.解:因
R A B C D
AB a1 a2 b13 b14
ACD a1 b22 a3 a4
BCD b31 a2 a3 a4
据A→C,可把b13改成a3。没有一行是全a,因此,R分解成ρ是损失分解。
又因为ΠAB(F)={ f },ΠACD(F)={ A→C, D→C },ΠBCD(F)={ D→C,BD→C }
而ΠAB(F)ÈΠACD(F) ÈΠBCD(F)={ A→C ,D→C,BD→C },与F不等价。
所以分解ρ没有保持函数依赖。
2.(1)R × S (2)Rwv S