過去問解きまくり研究所 ホーム

平成24年度 春期 午前Ⅱ 問15

トランザクション処理

隔離性水準に関する問題

SQL でトランザクションの隔離性水準を READ COMMITTED に指定したときに発生する状態はどれか。

答えと解説を見る

✓ これが正解ウダーティリードは発生しないが,アンリピータブルリードとファントムリードが発生する。

解説

ダーティリードだけが防がれ、残りの二つは起こり得ます。

SQL の隔離性水準は四つあり、水準が上がるほど起こり得る現象が減ります。READ COMMITTED は、コミット済みのデータだけを読む水準なので、他のトランザクションの未コミットの値を読むダーティリードは起きません。しかし、同じ行を読み直す間に他のトランザクションが更新してコミットすれば値が変わるアンリピータブルリードや、同じ条件で読み直す間に行が挿入されて増えるファントムリードは防げません。名前のとおり、コミット済みかどうかだけを保証する水準だと押さえると、残る現象が分かります。四つの水準を、防げる現象が一つずつ増えていく階段として並べておくと、どの水準で何が残るかを順に引けます。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:平成24年度 春期 データベーススペシャリスト試験 午前Ⅱ 問15

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)