ITパスポート試験 練習問題 56:データベース:トランザクション処理の制御
関係データベースにおける「排他制御」の目的として、正しいものはどれか。
- 複数の利用者が同時に同じデータを更新しようとした際、矛盾が生じないように制御する仕組み。
- システムの障害が発生した際に、更新途中のデータを障害発生前の状態に安全に元に戻す仕組み。
- データの入力ミスを防ぐため、あらかじめ決められた形式や範囲のデータのみを受け付ける仕組み。
- テーブル内のデータを特定の条件で検索する際、より早く結果を得るために索引をあらかじめ作成する仕組み。
- 万が一のデータ消失に備えて、定期的に別の記憶媒体にデータベース全体の複製を自動的に保存する仕組み。
正解と解説を見る
正解:複数の利用者が同時に同じデータを更新しようとした際、矛盾が生じないように制御する仕組み。
複数の利用者が同時に同じデータを更新した際に、データの不整合が起きないように順番待ちをさせる仕組みが排他制御です。
【正解の理由】
排他制御(ロック)は、データベースにおいて、ある利用者がデータを更新している間は、他の利用者がそのデータにアクセスできないように(または読み取りのみに制限するように)鍵をかけることで、データの矛盾を防ぐ仕組みです。
【不正解の理由】
• 「システムの障害が発生した際に、更新途中のデータを障害発生前の状態に安全に元に戻す仕組み」は、ロールバック(回復処理)の説明です。
• 「データの入力ミスを防ぐため、あらかじめ決められた形式や範囲のデータのみを受け付ける仕組み」は、入力チェック(バリデーション)や制約の説明です。
• 「テーブル内のデータを特定の条件で検索する際、より早く結果を得るために索引をあらかじめ作成する仕組み」は、インデックス(索引)の説明です。
• 「万が一のデータ消失に備えて、定期的に別の記憶媒体にデータベース全体の複製を自動的に保存する仕組み」は、バックアップ処理の説明です。