课程
河南大学计算机与信息工程学院第二学期期末考试 《数据库原理》试卷 A 卷
河南大学计算机与信息工程学院第二学期期末考试 《数据库原理》试卷 A 卷
一、单项选择题
1. 关系数据库采用的逻辑模型是:
- A. 层次模型
- B. 网状模型
- C. 对象模型
- D. 关系模型
2. 关系模型允许定义三类完整性约束,包括:
- A. 实体完整性、参照完整性和用户定义完整性
- B. 实体完整性、关系完整性和用户定义完整性
- C. 实体完整性、客体完整性和用户定义完整性
- D. 实体完整性、虚体完整性和用户定义完整性
3. SQL 主要功能包括:
- A. 数据定义、数据控制、数据操纵和数据查询
- B. 数据定义、数据存储、数据表示和数据查询
- C. 数据定义、数据计算、数据存储和数据检索
- D. 数据定义、数据表示、数据计算和数据检索
4. MAC 方法和 DAC 方法安全级别相比:
- A. MAC 安全级别高
- B. 安全级别相同
- C. DAC 安全级别高
- D. 无法比较
5. 触发器是建立在什么对象上的事件驱动的特殊过程:
- A. 视图
- B. 表
- C. 索引
- D. 表和索引
6. 2NF 到 3NF 的规范化过程中:
- A. 消除非主属性对码的传递函数依赖
- B. 消除非主属性对码的部分函数依赖
- C. 消除主属性对码的部分和传递函数依赖
- D. 消除非平凡且非函数依赖的多值依赖
7. 数据库设计绘制 E-R 图是在哪个步骤中进行的:
- A. 需求分析和概念设计
- B. 概念设计
- C. 逻辑设计和物理设计
- D. 实施运行和维护
8. DBMS 选择一种高效执行的查询处理策略的过程被称为:
- A. 查询分析
- B. 查询检查
- C. 查询优化
- D. 查询执行
9. 事务的基本特性是:
- A. 原子性、一致性、隔离性和持续性
- B. 原子性、动态性、隔离性和永久性
- C. 分子性、动态性、隔离性和持续性
- D. 并行性、一致性、逻辑性和永久性
10. DBMS 采用什么技术可无需逐个检查下一级节点的显式封锁:
- A. 排它锁和共享锁
- B. 排它锁和共享锁 (注:选项重复,依图所示)
- C. 活锁和死锁
- D. 意向锁
二、填空题
阅读 SQL Server 程序,完成下面检测更新和删除操作的触发器 SQL 语句。
--显示统计信息
CREATE PROCEDURE ProShowInfo @Flag varchar(20) AS
PRINT '更新了非成绩列!'
DECLARE @SCount INT, @CCount INT, @INFO VARCHAR(10)
IF(@FLAG='显示统计')
BEGIN
SELECT @SCount=(SELECT COUNT(____) From SC GROUP BY 学号),
@CCount=(SELECT COUNT(课程号) From SC GROUP BY 课程号)
PRINT '总计有门'+CONVERT(varchar(20), @CCount)+'课程被选择,共有'+CONVERT(varchar(20), @SCount)+'名学生选课。'
END
--显示更新信息
CREATE TRIGGER TriUpdateDeleteSc ON SC FOR UPDATE, DELETE
AS --检测成绩列表是否被更新
IF UPDATE(成绩)
BEGIN --显示学号、课程号、原成绩和新成绩信息
SELECT INSERTED.课程号, DELETED.成绩 AS 原成绩, INSERTED.成绩 AS 新成绩
FROM DELETED, INSERTED
WHERE DELETED.学号=INSERTED.'___' -- (1) 填空
END --检测是更新还是删除操作
ELSE
BEGIN --返回提示信息
DECLARE @FLAG varchar(20)
SELECT @FLAG='显示统计'
PRINT '显示选课统计信息!'
EXEC ProShowInfo'____' -- (2) 填空
END
三、简答题
1. 一般的数据库系统结构划分哪几级模式结构(5 分),可实现哪些程序与数据的独立性(5 分)。(总计 10 分)
2. 设有供应商、零件和工程项目之间的供应的关系模式 SPJ(SNO, PNO, JNO, QTY),其中 SNO 为供应商代码,PNO 为零件代码,JNO 为工程项目代码,QTY 为供应量。试用关系代数语言写出求供应工程 J1 零件 P1 的供应商号码 SNO(5 分);假如本关系已用 SQL Server 实现,请写出上述查询的 SQL 语句(5 分)(总计 10 分)
3. 简述什么是数据库的安全性和完整性(5 分),二者目的是什么(5 分)?(总计 10 分)
4. 简述 RDBMS 查询优化的一般步骤(5 分)和查询执行有哪些主要开销(5 分)。(总计 10 分)
5. 数据库恢复有哪些基本技术(5 分),简述数据库死锁的预防、诊断和解除的基本方法(5 分)。(总计 10 分)
四、设计题
根据学分制要求,学校开设的课程可供若干学生选择,同时每个学生可选择若干课程。学生(S)的基本信息有学号(XH)和姓名(XM);课程(C)的基本信息有课号(KH)和课名(KM);学生与课程的关系(X)的基本属性有成绩(G)。试用所学知识学生立一个学生选课数据库 XK,具体设计要求给出:
1. 绘制针对上述描述的数据库的 E-R 图?(5 分)
2. 编写创建选课表 X、课程表 C 和学生表 S 的 SQL 语句;为了数据安全性,编写建立只可见学生选课信息不可查看成绩信息的视图 V?(5 分)
3. 编写 SQL 语句实现:删除课号为 ‘98765’ 的课程信息;修改学号 ‘12345’ 的学生的姓名为 ‘王珊’;为学号 ‘12345’ 学生选择课号为 ‘43210’ 课程名为 ‘数据库原理’ 的课程(5 分)
4. 编写 SQL 语句实现:查询选择了课号为 ‘43210’ 学生姓名;统计王珊已选课程数;为提高检索速度,为选课的成绩信息建立聚集索引(5 分)













