平成21年度秋期 ITパスポート 問88 解説
複数の利用者が同時にデータベースを利用する場合に,1人の利用者がデータ更新中に,同一のデータを別の利用者が参照しようとした。このとき,データの整合性を保障するためのデータベース管理システムでの制御として,適切なものはどれか。
- ア更新処理を中断して参照させる。
- イ更新中の最新のデータを参照させる。
- ウ更新中の利用者の処理が終了してから参照させる。
- エ更新を破棄して更新前のデータを参照させる。
答えを見る
正解 ウ更新中の利用者の処理が終了してから参照させる。
要点更新中のデータはロックし,更新完了後に参照させる(排他制御)
解説
複数の利用者が同じデータを使う場合,更新中のデータにロックをかけ,更新処理が終わってから他の利用者に参照させる排他制御によって,データの整合性を保ちます。
- ア:更新を中断して参照させると,途中の不完全なデータを読むことになるので誤り。
- イ:更新中の未確定なデータを参照させると,後で取り消された場合に矛盾が生じるので誤り。
- エ:参照要求のたびに他人の更新を破棄するのは,更新が失われるので誤り。