次の(1)、(2)に該当するトランザクションの隔離性水準はどれか。
(1) |
対象の表のダーティリードは回避できる。 |
(2) |
一つのトランザクション中で、対象の表のある行を2回以上参照する場合、1回目の読込みの列値と2回目以降の読込みの列値が同じであることが保証されない。 |
ア |
READ COMMITTED |
|
イ |
READ UNCOMMITTED |
ウ |
REPEATABLE READ |
|
エ |
SERIALIZABLE |
答え ア
【解説】
ア |
READ COMMITTEDは、コミットされたデータを読込むためダーティリードを回避できますが、2回目の読込みの列値が1回目と同じとは限りません。 |
イ |
READ UNCOMMITTEDは、他のトランザクションがコミットしていないデータを読込むため、ダーティリードが発生します。 |
ウ |
REPEATABLE READは、一つのトランザクション中で、対象の表のある行を2回以上参照する場合、1回目の読込みの列値と2回目以降の読込みの列値が同じであることが保証されます。 |
エ |
SERIALIZABLEは、全てのトランザクションを直列化することです。 |
【キーワード】
・隔離性水準
【キーワードの解説】
- 隔離性水準
他のトランザクションとの影響の度合いを示す指標で、3つの異常を定義しています。
- ダーティリード
コミットしていないデータを読むこと
- アンリピータブルリード
同じデータを複数回読むとき、結果が違うこと
- ファントムリード
異なるデータ集合を読んでしまうこと
もっと、「隔離性水準」について調べてみよう。
戻る
一覧へ
次へ
|