問66
頻出度★☆☆
トランザクション処理におけるコミットの説明として, 適切なものはどれか。
この問題の解説と、これまでの解答の記録です。
トランザクション処理におけるコミットの説明として, 適切なものはどれか。
あるトランザクションが更新中の共有データに対し、他のトランザクションからの更新を禁止するのは「排他制御 (ロック)」の説明であり、コミットではない。
正解 コミット (commit) とは、トランザクション内の一連の処理がすべて正常に完了したときに、その更新内容をデータベースへ恒久的に反映し「確定」させる操作である。コミット後はその変更が正式なものとなり、取り消せなくなる。選択肢イの「トランザクションが正常に処理されたときに、データベースへの更新を確定させること」はこの定義そのものであり、適切。
処理が正常に終わらなかったときにデータベースをトランザクション開始前の状態へ戻すのは「ロールバック」の説明であり、更新を確定させるコミットとは逆の操作。
互いに関係付ける列をキーとして複数の表を一つにまとめるのは関係データベースの「結合 (join)」の説明であり、トランザクションのコミットとは無関係。