ITパスポート 令和元年度 秋期 特別措置試験 問64
データベース
排他制御の目的
データベース管理システムにおける排他制御の目的として,適切なものはどれか。
- ア 誤ってデータを修正したり,データを故意に改ざんされたりしないようにする。
- イ データとプログラムを相互に独立させることによって,システムの維持管理を容易にする。
- ウ データの機密のレベルに応じて,特定の人しかアクセスできないようにする。
- エ 複数のプログラムが同一のデータを同時にアクセスしたときに,データの不整合が生じないようにする。
答えと解説
✓ これが正解エ 複数のプログラムが同一のデータを同時にアクセスしたときに,データの不整合が生じないようにする。
解説
同時に触られたときに、データの食い違いを防ぐための働きです。
排他制御は、複数のプログラムが同じデータへ同時に触ろうとしたときに、食い違いが起きないようにする働きです。たとえば、残りの数を読み取って一つ減らす処理が二つ同時に走ると、どちらも同じ値を読んでしまい、結果として一つ分しか減らないことが起こりえます。そこで、先に触ったほうがロックをかけ、後から来たほうは終わるまで待つ形にします。一つのまとまりとして扱うトランザクションの単位でロックをかけるので、途中の半端な状態が他から見えることもありません。ただし、互いに相手のロックを待ち合って進めなくなるデッドロックには別の備えが必要です。データベース管理システムが、この仕組みを受け持ちます。待たせる範囲を広く取るほど安全ですが、その分だけ処理は遅くなります。よって最も適切なのは、データの不整合が生じないようにすることです。
ほかの選択肢の解説
- ア 誤ってデータを修正したり,データを故意に改ざんされたりしないようにする。:誤って直したり故意に書き換えられたりしないようにするのは、誰に何を許すかを定める働きや、元に戻せるようにしておく働きが受け持ちます。同時に触られたときの食い違いを防ぐ働きとは、想定している場面が違います。一人でも起きます。
- イ データとプログラムを相互に独立させることによって,システムの維持管理を容易にする。:データとプログラムを独立させて維持管理を楽にするのは、データの独立性です。作りを変えても影響が及ばないようにする話であり、同時に動いたときの整合を保つ話ではありません。作りやすさのための考え方で、時間の重なりを扱いません。
- ウ データの機密のレベルに応じて,特定の人しかアクセスできないようにする。:機密の度合いに応じて特定の人しか触れないようにするのは、権限の設定です。誰に見せるかを決める話なので、許された者どうしが同時に触ったときの食い違いは、これでは防げません。誰を入れるかの話で、順番を待たせる話ではありません。
関連用語
- 排他制御同じデータを同時に更新しても、矛盾が起きないようにする仕組みです。
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。
- デッドロック互いに相手の解放を待ち合って、どちらの処理も進めなくなる状態です。
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。
- 改ざん保管や送信の途中で、内容を許されずに書き換えること。
- 機密決められた人以外に見せてはならない、という扱いのことです。
出典:令和元年度 秋期 ITパスポート試験(特別措置試験) 問64
解説の最終確認:2026-09-23
解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。
関連問題
- 令和8年度 問56:
チェックポイントの 説明 (デッドロック) - 令和7年度 問61:
トランザクションに 関する 記述 (トランザクション) - 令和6年度 問74:
トランザクション 処理に 関する 記述 (排他制御) - 令和5年度 問66:
コミットの 説明 (排他制御) - 平成27年度 春期 (特別措置試験) 問77
(デッドロック)
同じ分野の問題
誤りを見つけたら報告する