数据库原理及应用-期末考试试题及答案
一、单项选择题
(本大题共10小题,每小题2分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。
得 分 1. DB、DBMS和DBS三者之间的关系是( )。
A.DB包括DBMS和DBS B.DBS包括DB和DBMS C.DBMS包括DB和DBS D.不能相互包括
2. 对数据库物理存储方式的描述称为( )
A.外模式 C.概念模式
A.提高数据与程序的独立性 C.保持数据与程序的一致性 A.基本表 C.基本表或视图 A.SELECT C.WHERE
部门的联系类型是( )
A.多对多 B.一对一 C.多对一 D.一对多 7. 如何构造出一个合适的数据逻辑结构是( )主要解决的问题。 A.关系系统查询优化 B.数据字典
C.关系数据库规范化理论 A. 需求分析 C. 逻辑设计 A. 事务处理 C. 数据恢复 A. 只可加X锁 C. 可加S锁或X锁
D.关系数据库查询 B. 概念设计 D. 物理设计 B. 完整性约束 D. 安全性控制 B. 只可加S锁 D. 不能加任何锁
8. 将E-R模型转换成关系模型,属于数据库的( )。
B.内模式 D.逻辑模式
B.提高数据与程序的安全性 D.提高数据与程序的可移植性 B.视图 D.数据字典 B.FROM D.GROUP BY
3. 在数据库三级模式间引入二级映象的主要作用是( )
4. 视图是一个“虚表”,视图的构造基于( )
5. 关系代数中的π运算符对应SELECT语句中的以下哪个子句?( )
6. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到
9. 事务日志的用途是( )
10.如果事务T已在数据R上加了X锁,则其他事务在数据R上( )
二、填空题
(本大题共10小题,每小题2分,共20分) 错填、不填均无分。
1. 数据库的逻辑数据独立性是由 映象提供的。 2. 关系代数中专门的关系运算包括:选择、投影、连接和_________。
3. 设有学生表S(学号,姓名,班级)和学生选课表SC(学号,课程号,成绩),为维护数据一致性,表S
与SC之间应满足 完整性约束。
得 分 4. 当数据库被破坏后,如果事先保存了数据库副本和 ,就有可能恢复数据库。 5. 如果一个满足1NF关系的所有属性合起来组成一个关键字,则该关系最高满足的范式是
(在1NF、2NF、3NF范围内)。
6. 设关系模式R(A,B,C,D),函数依赖集F={AB→C,D→B},则R的候选码为 。 7. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、插入
异常、______________和删除异常。 8. 并发控制的主要方法是 机制。
9. 若有关系模式R(A,B,C)和S(C,D,E),SQL语句
SELECT A, D FROM R, S WHERE R.C=S.C AND E = '80' ; 对应的关系代数表达式是 。 10. 分E-R图之间的冲突主要有属性冲突、 、结构冲突三种。
三、简答题
(本大题共4小题,每小题5分,共20分) 1. 说明视图与基本表的区别和联系。 2. 简述事务的特性。
3. 试述关系模型的参照完整性规则。 4. 简述系统故障时的数据库恢复策略。
得 分 四、设计题
(本大题共5小题,每小题4分,共20分) 现有关系数据库如下:
学生(学号,姓名,性别,专业) 课程(课程号,课程名,学分) 学习(学号,课程号,分数)
得 分 分别用关系代数表达式和SQL语句实现下列1—5小题(注意:每小题都要分别写出关系代数表达式和SQL语句!!!每小题关系代数表达式2分,SQL语句2分):
1. 检索所有选修了课程号为“C112”的课程的学生的学号和分数; 2. 检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数; 3. 检索“数据库原理”课程成绩高于90分的所有学生的学号、姓名、专业和分数; 4. 检索没学课程号为“C135”课程的学生信息,包括学号,姓名和专业;
5. 检索至少学过课程号为“C135”和“C219”的课程的学生的信息,包括学号、姓名和专业。
五、综合题
(本大题共2小题,每小题10分,共20分)
1. 现有如下关系模式:借阅(图书编号,书名,作者名,出版社,读者编号,
得 分 读者姓名,借阅日期,归还日期),基本函数依赖集F={图书编号→(书名,作者名,出版社),读者编号→读者姓名,(图书编号,读者编号,借阅日期)→归还日期} (1)读者编号是候选码吗?(2分) (2)写出该关系模式的主码。(2分)
(3)该关系模式中是否存在非主属性对码的部分函数依赖?如果存在,请写出一个。(2分) (4)该关系模式满足第几范式?并说明理由。(4分)
2. 某工厂生产多种产品,每种产品由不同的零件组装而成,有的零件可用在不同的产品上。产品有产品
号和产品名两个属性,零件有零件号和零件名两个属性。根据语义设计E-R模型,并将E-R模型转换成关系模式,要求关系模式主码加下划线表示。(E-R模型4分,关系模型6分)
参考答案与评分细则
一、单项选择题(共10小题,每小题2分,共20分) 题号 答案 1 B 2 B 3 A 4 C 5 A 6 C 7 C 8 C 9 C 10 D 二、填空题(共10小题,每小题2分,共20分)。 1. 外模式/模式 3. __ 参照 __ 5. __ 3NF _ 7. _ 修改异常 __ 9.πA,D(σE='80'(R
2. 除
4. 日志文件_____
6. _ AD __ _
8. _ 封锁__
S)) 10. 命名冲突
三、简答题(共4小题,每小题5分,共20分)。
1. 答:视图是从一个或几个基本表导出的表,它与基本表不同,它是一个虚表,(2分)数据库中只
存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。
2. 答:事务具有四个特性,即ACID特性:(1分)
(1)原子性:事务中包括的所有操作要么都做,要么都不做。(1分)
(2)一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态。(1分) (3)隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。(1分) (4)持续性:事务一旦提交,对数据库的改变是永久的。(1分)
对应(基本关系R和S不一定是不同的关系)(2分),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)(1.5分)或者等于S中某个元组的主码值(1.5分)。 4. 答:正像扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入REDO队列,同
时找出故障发生时尚未完成的事务,将其事务标识记入UNDO队列(2分);对UNDO队列中的各个事务进行撤销处理(1.5分);对REDO队列中的各个事务进行重做处理。(1.5分) 3. 答:参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相
四、设计题(共5小题,每小题关系代数式2分,SQL语句2分,共20分)。
1.SQL语句:
SELECT 学号,分数 FROM 学习 WHERE 课程号=’C112’
(SELECT 学号,分数 FROM 学习1分,WHERE 课程号=’C112’1分) 关系代数:
π学号,分数(?课程号=’C112’(学习))
(π学号,分数1分,?课程号=’C112’(学习)1分。
2. SQL语句:
SELECT 学生.学号,姓名,课程名,分数
FROM 学生,学习,课程 (1分)
WHERE 学习.学号=学生.学号 AND 学习.课程号=课程.课程号 AND 专业=’英语’ (1
分)
关系代数:
(?专业=’英语’(学生))学习
(π学号,姓名,课程名,分数1分,π学号,姓名(?专业=’英语’(学生))π
学号,姓名,课程名,分数
(π
学号,姓名
π
课程号,课程名
(课程))
(课程)1分)
学习
π
课程号,课程名
3. SQL语句:
SELECT 学生.学号,姓名,专业,分数
FROM 学生,学习,课程 (1分)
WHERE 学生.学号=学习.学号 AND 学习.课程号=课程.课程号 AND分数>90 AND 课程名
=‘数据库原理’ (1分)
关系代数:
π
学号,姓名,专业,分数
(π
学号,姓名,专业
(学生)(?分数>90
(学习))
分数>90
π
课程号,课程名
(? 课程名=’数据库原理’(课
(?课程名=’数据库原
程)))
(π
学号,姓名,专业,分数理’
1分,π
学号,姓名,专业
(学生)(?(学习))π
课程号,课程名
(课程)) 1分)
4.SQL语句:
SELECT 学号,姓名,专业
FROM 学生
WHERE 学号 NOT IN (1分)
(SELECT 学号 FROM 学习 WHERE 课程号=‘C135’) (1分)
关系代数:
(π学号(学生)-π学号(?(π学号(学生)-1分,π
5.SQL语句:
(学习)))(π学号,姓名,专业(学生)
(π学号,姓名,专业(学生)1分) 学号(?课程号=‘C135’ (学习)))
课程号=‘C135’
SELECT 学号,姓名,专业 FROM 学生 WHERE 学号 IN (1分)
(SELECT X1.学号 FROM 学习 X1,学习 X2 WHERE X1.学号=X2.学号 AND X1.课程号=‘C135’AND X2.课程号=‘C219’)(1分) 关系代数:
(?课程号=‘C135’∨课程号=‘C219’ (课程)))π学号,姓名,专业(学生)
(π学号,课程号(学习)÷π课程号(?课程号=‘C135’∨课程号=‘C219’ (课程))1分,π学号,姓名,专业(学生)1
(π
学号,课程号
(学习)÷π
课程号
分)
五、综合题(共2小题,每小题10分,共20分)。
1.
答:(1)不是(2分)。
(2)(图书编号,读者编号,借阅日期)(2分)
(3)存在(1分)。(图书编号,读者编号,借阅日期)→书名、(图书编号,读者编号,借阅日期)
→作者名、(图书编号,读者编号,借阅日期)→出版社、(图书编号,读者编号,借阅日期)→读者姓名(1分,四个函数依赖任选一个即可) (4)1NF。因为存在非主属性对码的部分函数依赖。 2. (E-R产品名模型4 分,两个实体型属性少1个扣0.5分,联系类型错扣1分) 产品号 零件号 零件名 产品(产品号,产品名) 零件(零件号,零件名) 组装(产品号,零件号)m n 产品 组装 (关系模型6分,3个关系模式各2分,主键错
零件