トランザクション処理におけるロールバックの説明として,適切なものはどれか。
- アあるトランザクションが共有データを更新しようとしたとき,そのデータに対する他のトランザクションからの更新を禁止すること
- イトランザクションが正常に処理されたときに,データベースへの更新を確定させること
- ウ何らかの理由で,トランザクションが正常に処理されなかったときに,データベースをトランザクション開始前の状態にすること
- エ複数の表を,互いに関係付ける列をキーとして,一つの表にすること
正解と解説を見る
正解
ウ 何らかの理由で,トランザクションが正常に処理されなかったときに,データベースをトランザクション開始前の状態にすること
ロールバックとは、トランザクションが何らかの理由で正常に完了しなかった場合に、データベースの状態をそのトランザクション開始前の状態に戻す処理であり、これが正解である。「他のトランザクションからの更新を禁止する」のは排他制御(ロック)の説明、「更新を確定させる」のはコミットの説明、「複数の表を一つの表にまとめる」のは結合(join)の説明であり、いずれもロールバックとは異なる操作を指している。