国开搜题
想要快速找到正确答案?
立即关注 国开搜题微信公众号,轻松解决学习难题!
作业辅导
扫码关注
论文指导
轻松解决学习难题!
广东开放大学数据库原理与应用(本)期末考试试卷与参考答案
《数据库原理与应用(本)》期末考试学习笔记
一、课程核心知识点总结
1. 数据库系统基础
- 数据库系统(DBS)组成:硬件、数据库、数据库管理系统(DBMS)、应用程序、用户。
- 数据模型:概念模型(E-R模型)、逻辑模型(关系模型)、物理模型。
- 关系模型三要素:关系、关系模式、关系完整性约束(实体完整性、参照完整性、用户定义完整性)。
2. SQL语言
- 数据定义语言(DDL):`CREATE TABLE`, `ALTER TABLE`, `DROP TABLE`。
- 数据操作语言(DML):`SELECT`, `INSERT`, `UPDATE`, `DELETE`。
- 聚合函数与分组查询:`COUNT()`, `SUM()`, `AVG()`, `GROUP BY`, `HAVING`。
- 连接查询:`INNER JOIN`, `LEFT JOIN`, `RIGHT JOIN`, `CROSS JOIN`。
3. 关系规范化理论
- 范式:1NF(原子性)、2NF(消除非主属性对码的部分依赖)、3NF(消除传递依赖)、BCNF(消除所有主属性依赖)。
- 函数依赖:平凡依赖、非平凡依赖、完全依赖、传递依赖。
4. 事务与并发控制
- 事务ACID特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。
- 并发问题:丢失更新、脏读、不可重复读、幻读。
- 锁机制:共享锁(S锁)、排他锁(X锁)、两阶段锁协议(2PL)。
5. 数据库设计
- 设计步骤:需求分析→概念设计(E-R图)→逻辑设计→物理设计→实施与维护。
- E-R图转换规则:实体集→关系模式,联系→独立关系或合并到实体关系中。
二、期末考试模拟试卷
一、选择题(每题2分,共20分)
1. 数据库系统的核心是:
- A. 数据库
- B. 数据库管理系统
- C. 数据库管理员
- D. 用户
2. 以下哪项属于关系模型的完整性约束?
- A. 用户定义完整性
- B. 索引完整性
- C. 存储完整性
- D. 网络完整性
3. 事务的隔离性通过以下哪种机制实现?
- A. 锁机制
- B. 日志文件
- C. 触发器
- D. 索引优化
4. 以下哪个SQL语句用于删除表?
- A. `DELETE TABLE`
- B. `DROP TABLE`
- C. `REMOVE TABLE`
- D. `CLEAR TABLE`
5. 第三范式(3NF)要求关系模式必须满足:
- A. 满足1NF且不存在非主属性对码的部分依赖
- B. 满足2NF且不存在非主属性对码的传递依赖
- C. 满足BCNF且不存在主属性依赖
- D. 满足2NF且不存在任何函数依赖
二、填空题(每空2分,共10分)
1. 在SQL的`SELECT`语句中,用于分组的子句是________,用于筛选分组的子句是________。
2. 事务的隔离级别从低到高依次为________、________、________、________。
3. 设计E-R图时,联系可以分为________和________两种类型。
三、简答题(每题6分,共30分)
1. 简述关系模型的三类完整性约束及其含义。
2. 什么是数据库的规范化?为什么要进行规范化?
3. 请列举三种常见的数据库并发控制技术,并简要说明其作用。
4. 写出SQL语句:查询选修了课程号为“C001”的学生姓名及成绩。
5. 解释事务的ACID特性,并举例说明其应用场景。
四、设计题(每题10分,共20分)
1. 某图书馆管理系统需要记录读者、书籍和借阅信息,请设计其E-R图并转换为关系模式。
2. 设计一个学生选课系统的数据库逻辑结构,包含学生表、课程表和选课表,要求满足第三范式。
五、综合应用题(每题10分,共20分)
1. 某数据库中存在如下关系模式:
- `Orders(订单号, 客户号, 订单日期, 金额)`
- `Customers(客户号, 客户名, 地址)`
- 问题:
1. 写出查询2023年订单总金额的SQL语句。
2. 若存在函数依赖`客户号→客户名,客户号→地址`,判断该关系模式是否满足3NF?为什么?
2. 假设事务T1和T2并发执行,操作如下:
- T1:`READ(A); A = A * 2; WRITE(A);`
- T2:`READ(A); B = A + 5; WRITE(B);`
- 问题:
1. 若并发执行可能导致什么问题?请说明原因。
2. 如何通过锁机制避免该问题?
三、参考答案
一、选择题
1. B
2. A
3. A
4. B
5. B
二、填空题
1. `GROUP BY`, `HAVING`
2. 读未提交、读已提交、可重复读、串行化
3. 1:1、1:N、M:N(任选两种)
三、简答题
1. 三类完整性约束:
- 实体完整性:主键值不能为空且唯一。
- 参照完整性:外键值必须引用主表中已存在的值或为空。
- 用户定义完整性:根据业务规则定义的约束(如年龄范围)。
2. 规范化定义与目的:
- 规范化:通过消除数据冗余和异常,将关系模式逐步转化为更高范式的过程。
- 目的:减少数据冗余、避免更新异常、提高数据一致性。
3. 并发控制技术:
- 锁机制:通过加锁防止并发冲突。
- 时间戳:按事务开始时间顺序执行操作。
- 乐观并发控制:假设冲突较少,仅在提交时检查冲突。
4. SQL语句:
```sql
SELECT 学生姓名, 成绩
FROM 学生表, 选课表
WHERE 学生表.学号 = 选课表.学号
AND 课程号 = 'C001';
```
5. ACID特性:
- 原子性:事务要么全做,要么全不做(如转账操作)。
- 一致性:事务执行前后数据库状态合法(如余额不能为负)。
- 隔离性:事务之间互不干扰(如银行账户并发操作)。
- 持久性:提交后数据永久保存(如订单记录不可丢失)。
四、设计题
1. E-R图与关系模式:
- E-R图:读者(实体)、书籍(实体)、借阅(联系,M:N)。
- 关系模式:
- `读者(读者号, 姓名, 联系方式)`
- `书籍(ISBN, 书名, 作者)`
- `借阅(读者号, ISBN, 借阅日期, 归还日期)`
2. 学生选课系统逻辑结构:
- 学生表:`学生号(主键), 姓名, 班级`
- 课程表:`课程号(主键), 课程名, 学分`
- 选课表:`选课号(主键), 学生号(外键), 课程号(外键), 成绩`
- 满足3NF:无非主属性对码的传递依赖。
五、综合应用题
1. 问题解答:
1. SQL语句:
```sql
SELECT SUM(金额)
FROM Orders
WHERE 订单日期 BETWEEN '2023-01-01' AND '2023-12-31';
```
2. 是否满足3NF?
- 满足。因为`客户号→客户名`和`客户号→地址`是完全函数依赖,且不存在非