データベース

基本情報技術者試験 科目A免除 修了試験 20210725 実施分 問27

データベースのトランザクションに関する記述のうち,適切なものはどれか。
  • ア 他のトランザクションにデータを更新されないようにするために,テーブルに対するロックをアプリケーションプログラムが解放した。
  • イ トランザクション障害が発生したので,異常終了したトランザクションを DBMS がロールフォワードした。
  • ウ トランザクションの更新結果を確定するために,トランザクションをアプリケーションプログラムがロールバックした。
  • エ 複数のトランザクション間でデッドロックが発生したので,トランザクションを DBMS がロールバックした。

出典:基本情報技術者試験 科目A免除 修了試験 20210725 実施分 問27

答えと解説を見る

正解:エ

覚える知識

デッドロックの定義

デッドロック検出時、DBMS はいずれかのトランザクションを強制的にロールバックして解消する。

この問題で必要なこと

デッドロックが発生すると DBMS が一方のトランザクションをロールバックして解消する。ロールフォワードは障害回復、コミットで更新確定。

ひっかけ

ロールバックを更新確定と取り違える、トランザクション障害にロールフォワードを使う誤り。

この知識の出題:本試験系 2 回・免除試験 4 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「トランザクションと排他制御(ロック・デッドロック)」で学ぶ

同じ知識の過去問