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