跳到正文

平成27年度 春期 ITパスポート試験 問77

这道题的解析和你的作答记录。

問77
頻出度★☆☆

DBMSにおいて, データへの同時アクセスによる矛盾の発生を防止し, データの一貫性を保つための機能はどれか。

出典 平成27年度 春期 ITパスポート試験 問77
解説

問 77

  • 错误ア

    规范化是数据库的设计技法,通过拆分表来减少重复和更新异常、整理数据结构。它说的是在设计阶段去掉结构上的冗余,并不是在运行时协调并发访问冲突的功能。

  • 错误イ

    死锁是指多个事务互相等待对方持有的锁被释放,结果谁都无法继续前进的状态。它反而是执行排他控制之后可能出现的「麻烦现象(故障)」,并不是防止矛盾的功能本身。

  • ウ

    正解 正确答案是ウ的「排他控制(互斥控制)」。在 DBMS 中,多个用户或事务可能同时访问同一份数据,如果不加任何控制,就会出现「更新被覆盖而丢失」「提交前的中间值被别人读到」这类矛盾(不一致)。排他控制的做法是:对某个事务正在处理的数据加锁,让其他事务的读写暂时等待,以此协调并发访问的先后顺序,保护数据的一致性。锁分为既禁止他人读取也禁止他人更新的排他锁(写锁)和只允许他人读取的共享锁(读锁),这正好对应题目所说的「防止并发访问产生矛盾、保持一致性的功能」。

  • 错误エ

    还原是把备份的数据写回去、使数据库恢复到故障发生前状态的操作。其目的是从故障中恢复(事后修复),与运行中的并发访问控制的作用不同。

ここがポイント
  • 排他控制(加锁)=协调并发执行的事务对数据的访问,防止更新丢失和读到中间值,从而保持数据一致性的 DBMS 功能。要区分排他锁(他人既不能读也不能改)和共享锁(他人可以读)。
  • 易混术语的分工:规范化=设计时消除冗余,死锁=因锁互相等待而停滞的故障现象,还原(以及回滚/前滚)=故障后的恢复手段。题目问「防止矛盾发生的功能」时,答案就是排他控制。
用語
解答問77ウ
练这一题

作答记录