令和元年度 秋期 応用情報技術者試験 午前 問28
RDBMSのロックに関する記述のうち,適切なものはどれか。ここで,X,Yはトランザクションとする。
キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:イ
-
ア: XがA表内の特定行aに対して共有ロックを獲得しているときは,YはA表内の別の特定行bに対して専有ロックを獲得することができない。
誤り。共有ロックは他の行に対して専有ロックを妨げません。Xが行aに共有ロックを持っていても、Yは行bに専有ロックを獲得できます。 -
イ: XがA表内の特定行aに対して共有ロックを獲得しているときは,YはA表に対して専有ロックを獲得することができない。
正しい。共有ロックがかかっている間は、テーブル全体に対して専有ロックを獲得することはできません。行レベルの共有ロックが存在する場合、テーブルレベルの専有ロックはブロックされます。 -
ウ: XがA表に対して共有ロックを獲得しているときでも,YはA表に対して専有ロックを獲得することができる。
誤り。共有ロックが存在する間は、同じテーブルに対して専有ロックを獲得することはできません。 -
エ: XがA表に対して専有ロックを獲得しているときでも,YはA表内の特定行aに対して専有ロックを獲得することができる。
誤り。専有ロックはテーブル全体または行レベルで他のロックを阻止します。他のトランザクションは専有ロック中に同じテーブルや行にロックをかけることはできません。
答え
イ: XがA表内の特定行aに対して共有ロックを獲得しているときは,YはA表に対して専有ロックを獲得することができない。
出典:令和元年度 秋期 応用情報技術者試験 午前 問28