専有ロックとは?
専有ロックとは、データを更新するために掛けるロック。他のどのロック(共有・専有とも)とも両立せず、1つのトランザクションだけが保持できる。
基本情報技術者試験の過去問では2回出題されています(2016年度〜2019年度)。
せんゆうロック
専有ロックの意味
データを更新するために掛けるロック。他のどのロック(共有・専有とも)とも両立せず、1つのトランザクションだけが保持できる。
専有ロックの具体例
ある行を更新中は、他のトランザクションはその行を読むことも更新することもできない(隔離性水準による)。
専有ロックは試験でどう引っ掛けられる?
専有ロックと関連する用語
専有ロックが出た過去問
DBMSにおいて,複数のトランザクション処理プログラムが同一データベースを同時に更新する場合,論理的な矛盾を生じさせないために用いる技法はどれか。
正解:排他制御
要点:同時更新の矛盾はロックによる排他制御で防ぐ
複数のトランザクションが同じデータを同時に更新すると、一方の更新がもう一方に上書きされるなどの矛盾が生じる。これを防ぐため、更新中のデータに施錠して他からの操作を待たせる仕組みが排他制御である。ロックの粒度や共有ロック・専有ロックの使い分けによって、矛盾を防ぎつつ並行性をなるべく損なわないよう調整する。
出典:平成28年度 春期 基本情報技術者試験 午前 問30(IPA)2相ロッキングプロトコルに従ってロックを獲得するトランザクションA、Bを図のように同時実行した場合に、デッドロックが発生しないデータ処理順序はどれか。ここで、r…
正解:①update X ②read W ③update Y ④update Z
要点:デッドロック回避の基本は、資源のロック順序を全体でそろえること
2相ロッキングでは獲得したロックをトランザクション終了まで解放しないため、2つのトランザクションが同じ2件のデータを互いに逆の順序でロックしようとするとデッドロックになる。トランザクションAはW、X、Y、Zの順に処理するので、Bも同じ相対順序でロックを取れば循環待ちは起きない。Wは共有ロックなので双方が同時に保持でき、待ちの原因にはならない点も判断材料になる。
出典:令和1年度 秋期 基本情報技術者試験 午前 問29(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。