問題
問66
トランザクション処理におけるコミットの説明として、適切なものはどれか。
- あるトランザクションが共有データを更新しようとしたとき、そのデータに対する他のトランザクションからの更新を禁止すること
- トランザクションが正常に処理されたときに、データベースへの更新を確定させること
- 何らかの理由で、トランザクションが正常に処理されなかったときに、データベースをトランザクション開始前の状態にすること
- 複数の表を、互いに関係付ける列をキーとして、一つの表にすること
[出典:ITパスポート試験 令和5年度 問66]
スポンサーリンク
正解
正解は「イ」です。
解説
コミット(Commit)とは、データベースのトランザクション処理において、変更内容を確定させる操作のことです。トランザクションが正常に処理された場合、コミットを行うことでデータベースへの更新が確定し、変更が永続的に保存されます。
コミットの特徴
- トランザクションの一貫性を保証するために使用される。
- コミットが実行されると、トランザクションで行った変更が正式に適用される。
- 途中でエラーが発生した場合、ロールバック(RollBack)を行い、変更前の状態に戻すことができる。
正しい選択肢
選択肢「イ」の「トランザクションが正常に処理されたときに、データベースへの更新を確定させる」は、コミットの正しい説明です。
ア(あるトランザクションが共有データを更新しようとしたとき、そのデータに対する他のトランザクションからの更新を禁止すること):
これは「ロック(Lock)」の説明であり、コミットとは異なります。
ウ(何らかの理由で、トランザクションが正常に処理されなかったときに、データベースをトランザクション開始前の状態にすること):
これは「ロールバック(Rollback)」の説明であり、コミットとは異なります。
エ(複数の表を、互いに関係付ける列をキーとして、一つの表にすること):
これは「正規化」の説明であり、コミットとは関係ありません。
難易度
やや易しい
コミットの概念を理解していれば簡単に解ける問題です。ロールバックやロックと混同しないように注意が必要です。
スポンサーリンク
用語補足
コミット(Commit):
トランザクション処理において、データベースへの変更を確定させる操作です。コミットが行われると、そのトランザクションの変更が永続的に保存されます。
ロールバック(Rollback):
トランザクション処理において、エラーが発生した場合や異常が発生した場合に、変更前の状態に戻す操作のことです。
対策
- コミット、ロールバック、ロックなど、データベースのトランザクション制御の基本概念を整理しておく。
- トランザクションの流れ(開始→処理→コミット/ロールバック)を具体的な例とともに理解する。
- データベース管理システム(DBMS)の機能について学習し、SQL の「COMMIT」や「ROLLBACK」コマンドの使い方を確認する。