問66
ITパスポート過去問 令和5年度(2023年)問66
トランザクション処理におけるコミットの説明として,適切なものはどれか。
選択肢
- ア:あるトランザクションが共有データを更新しようとしたとき,そのデータに対する他のトランザクションからの更新を禁止すること
- イ:トランザクションが正常に処理されたときに,データベースへの更新を確定させること
- ウ:何らかの理由で,トランザクションが正常に処理されなかったときに,データベースをトランザクション開始前の状態にすること
- エ:複数の表を,互いに関係付ける列をキーとして,一つの表にすること
- ア
- イ
- ウ
- エ
正解と解き方・学習ポイント(AI解説)
正解:イ
あなたの回答:未回答
コミットは、トランザクションが正常に終了したときに、更新内容をデータベースに確定させる操作です。排他制御(ロック)や、異常時に更新を取り消すロールバック、表の結合(JOIN)とは役割が異なります。
Point
トランザクション処理において、コミットが何を行う操作かを問う問題です。コミット、排他制御(ロック)、ロールバック、結合(JOIN)を区別できることを目的としています。
解くために必要な知識
この問題を解くには、トランザクション処理に関する基本用語の理解が必要です。
用語の整理
| 用語 | 意味 |
|---|---|
| トランザクション | データベースに対する処理を、まとめて管理する単位です。途中で失敗した場合に備え、処理を確定するか元に戻すかを選べるようにします。 |
| コミット | トランザクションが正常に完了したときに、更新内容をデータベースに確定させる操作です。 |
他の選択肢に出てくる用語
| 用語 | 意味 |
|---|---|
| 排他制御(ロック) | あるトランザクションがデータを更新している間、他のトランザクションが同じデータを更新できないようにする仕組みです。 |
| ロールバック | トランザクションが正常に処理されなかったときに、更新内容を取り消して開始前の状態に戻す操作です。 |
| 結合(JOIN) | 複数の表を、関係付ける列(共通する列など)を条件にして組み合わせ、1つの結果として扱う操作です。 |
問題の解法手順
各選択肢の整理
| 選択肢 | 何の説明か | 判断のポイント |
|---|---|---|
| ア | 排他制御(ロック) | 他トランザクションの更新を禁止して競合を防ぎます。 |
| イ | コミット | 正常終了時に更新を確定します。 |
| ウ | ロールバック | 異常終了時に開始前へ戻します。 |
| エ | 結合(ジョイン) | 複数表を共通列で関連付けて扱います。 |
結論
コミットの説明は「イ」です。
選択肢ごとの解説
- ア:不正解
これは排他制御(ロック)の説明です。あるトランザクションがデータを更新している間、他のトランザクションが同じデータを更新できないようにして矛盾を防ぎます。
- イ:正解
トランザクションが正常に処理されたときに、更新内容をデータベースに確定させる操作がコミットです。
- ウ:不正解
これはロールバックの説明です。処理が失敗したときに、更新を取り消してトランザクション開始前の状態に戻します。
- エ:不正解
これは結合(ジョイン)の説明です。複数の表を、関係付ける列を基準にして関連付け、必要なデータをまとめて扱えるようにします。
まとめ
コミットは、トランザクションが正常に終了したときに、更新内容をデータベースに確定させる操作です。排他制御(ロック)や、異常時に更新を取り消すロールバック、表の結合(JOIN)とは役割が異なります。
※本解説は生成AIによる学習支援用の参考情報です。内容の正確性や最新性は保証されません。最終的な判断は、試験実施団体の公式資料をご確認ください。
テクノロジ系 > 技術要素 > データベース
これは排他制御(ロック)の説明です。あるトランザクションがデータを更新している間、他のトランザクションが同じデータを更新できないようにして矛盾を防ぎます。
トランザクションが正常に処理されたときに、更新内容をデータベースに確定させる操作がコミットです。
これはロールバックの説明です。処理が失敗したときに、更新を取り消してトランザクション開始前の状態に戻します。
これは結合(ジョイン)の説明です。複数の表を、関係付ける列を基準にして関連付け、必要なデータをまとめて扱えるようにします。