原文筆記
本課程筆記資料庫系統 · 30 篇
Day 02 - 数据库100题:单项选择 21-40
参考重点:教材第 1 章数据库系统特点,第 11 章恢复技术,第 12 章并发控制。
21. 若一个事务执行成功,则它的全部更新被提交;若一个事务执行失败,则 DB 中被其更新过的数据恢复原状,就像这些更新从未发生过,这保持了数据库处于 。
A. 安全性状态 B. 一致性状态 C. 完整性状态 D. 可靠性状态
答案:B
讲解:事务要把数据库从一个一致性状态变到另一个一致性状态。失败事务通过回滚撤销影响,避免数据库停留在半完成状态。
22. 事务的并发执行不会破坏 DB 的完整性,这个性质称为事务的 。
A. 原子性 B. 隔离性 C. 持久性 D. 一致性
答案:B
讲解:隔离性要求并发事务互不干扰,其结果等价于某个串行执行结果。这样并发执行才不会因交叉读写破坏数据库一致性。
23. 事务的隔离性由 DBMS 的 。
A. 安全性子系统实现 B. 完整性子系统实现 C. 并发控制子系统实现 D. 恢复子系统实现
答案:C
讲解:隔离性依靠并发控制实现,典型机制包括封锁、时间戳、多版本并发控制等。
24. 事务的持久性由 DBMS 的 。
A. 安全性子系统实现 B. 完整性子系统实现 C. 并发控制子系统实现 D. 恢复子系统实现
答案:D
讲解:持久性要求事务一旦提交,其更新即使系统故障也不能丢失。日志、检查点、REDO 等恢复技术负责保证这一点。
25. 如果事务 T1 获得了数据对象 D 上的排他锁,那么, 。
A. T1 对 D 只能读不能写 B. T1 对 D 只能写不能读 C. 根据 X 锁协议,另一事务 T2 对 D 既不能读也不能写 D. 根据 S 锁协议,另一事务 T2 对 D 只能读不能写
答案:C
讲解:排他锁又称 X 锁或写锁。事务持有 X 锁时,其他事务不能再对同一对象加 S 锁或 X 锁,因此既不能读也不能写。
26. 事务的执行次序称为 。
A. 调度 B. 过程 C. 优先级 D. 步骤
答案:A
讲解:调度描述多个事务的读写操作交叉执行的顺序。判断并发执行是否正确,核心就是判断调度是否可串行化。
27. 以下四个概念中,可用来解决“一个并发调度是否正确”问题的是 。
A. 串行调度 B. 并发事务的可串行化 C. 并发事务的可并行化 D. 并发事务的有效调度
答案:B
讲解:可串行化是并发调度正确性的准则。只要一个并发调度等价于某个串行调度,就认为它不会破坏事务隔离性。
28. “所有事务都遵循两段锁协议”与“事务的并发调度是可串行化的”,二者关系是?
A. 前者是后者的必要条件 B. 后者是前者的充分条件 C. 前者是后者的必然结果 D. 后者是前者的充分必要条件
答案:C(按题项意图)
讲解:严格说,“所有事务遵循两段锁协议”是“冲突可串行化”的充分条件,不是必要条件。选项没有标准表述“前者是后者的充分条件”,所以通常按 C 理解为:遵循两段锁协议必然推出调度可串行化。
29. DB 技术中,“脏数据”是指 。
A. 未提交的数据 B. 未提交的随后又被撤销的数据 C. 违反访问权而写入 DB 的数据 D. 输入时就有错的数据
答案:B
讲解:脏数据是事务读到了另一个尚未提交事务写入的数据,而该写入后来被回滚。读脏数据会导致事务基于不存在的结果继续计算。
30. 数据库恢复的基本策略是数据冗余,被转储的冗余数据包括 。
A. 日志文件和数据库副本 B. 应用程序和数据库副本 C. 数据字典、日志文件和数据库副本 D. 应用程序、数据字典、日志文件和数据库副本
答案:A
讲解:恢复依赖两类冗余:数据库后援副本和日志文件。副本用于恢复基线,日志用于重做已提交事务、撤销未提交事务。
31. 设有两个事务 T1 和 T2,它们的并发操作如下,则正确的结论是 。
T1:读 S,S=S-2,写 S,随后 ROLLBACK 恢复 S 值。 T2:在 T1 回滚前读 S,S=S-4。
A. 不存在问题 B. 丢失修改 C. 读了“脏”数据 D. 产生不一致分析
答案:C
讲解:T2 读到了 T1 尚未提交的写入值,而 T1 随后回滚,所以 T2 读到的是脏数据。避免方法是读前加 S 锁,或使用更高隔离级别。
32. SQL 的 ROLLBACK 语句的主要作用是 。
A. 终止程序 B. 中断程序 C. 事务提交 D. 事务回退
答案:D
讲解:ROLLBACK 撤销当前事务中已经执行但尚未提交的更新,使数据库恢复到事务开始前的一致状态。
33. SQL 中设置主键和外键的子句属于 DBS 的 范围。
A. 完整性控制 B. 安全性控制 C. 并发控制控制 D. 恢复控制
答案:A
讲解:主键约束实现实体完整性,外键约束实现参照完整性,都属于完整性控制。
34. 在数据管理技术的发展过程中,数据独立性最高的是 阶段。
A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理
答案:A
讲解:数据库系统通过三级模式和两级映像提高数据独立性。文件系统只有较弱的物理独立性,人工管理几乎没有独立性。
35. 数据库系统与文件系统的主要区别是 。
A. 数据库系统复杂,而文件系统简单 B. 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C. 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D. 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量
答案:B
讲解:本质区别在于数据库系统实现整体数据结构化、共享性强、冗余度低、数据独立性高,并由 DBMS 统一管理数据。
36. 数据库的概念模型独立于 。
A. 具体的机器和 DBMS B. E-R 图 C. 信息世界 D. 现实世界
答案:A
讲解:概念模型面向信息世界,用来抽象现实世界,不依赖具体机器、存储结构或某个 DBMS。E-R 图是概念模型的常用表示方法。
37. 数据库具有 ① 、最小的 ② 和较高的 ③ 。
① A. 程序结构化 B. 数据结构化 C. 程序标准化 D. 数据模块化 ② A. 冗余度 B. 存储量 C. 完整度 D. 有效性 ③ A. 程序与数据的可靠性 B. 程序与数据完整性 C. 程序与数据独立性 D. 程序与数据一致性
答案:①B;②A;③C
讲解:数据库系统阶段的典型特点是整体数据结构化、共享性高、冗余度低、数据独立性高,并具有统一的数据保护能力。
38. 在数据库中存储的是 。
A. 数据 B. 数据模型 C. 数据以及数据之间的联系 D. 信息
答案:C
讲解:数据库不仅保存数据本身,也通过数据模型保存和表达数据之间的联系。关系模型中,这些联系通常通过关系和外键体现。
39. 数据库中,数据的物理独立性是指 。
A. 数据库与数据库管理系统的相互独立 B. 用户程序与 DBMS 的相互独立 C. 用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D. 应用程序与数据库中数据的逻辑结构相互独立
答案:C
讲解:物理独立性指内模式改变,例如文件组织、索引、存储位置变化时,模式和应用程序尽量不变。逻辑独立性则是模式改变时外模式和应用程序尽量不变。
40. 数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指 。
A. 同一个应用中的多个程序共享一个数据集合 B. 多个用户、同一种语言共享数据 C. 多个用户共享一个数据文件 D. 多种应用、多种语言、多个用户相互覆盖地使用数据集合
答案:D
讲解:数据库共享不是简单复制文件,而是在 DBMS 统一控制下共享同一份有组织的数据。这样可以减少冗余并提高一致性,但也需要安全、完整性和并发控制。