平成25年 春期 データベーススペシャリスト 午前II 問9

トランザクションの隔離性水準のうち、次の(1)、(2)に該当するSQLの指定はどれか。

 (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つの異常を定義しています。
    • ダーティリード
      コミットしていないデータを読むこと
    • アンリピータブルリード
      同じデータを複数回読むとき、結果が違うこと
    • ファントムリード
      異なるデータ集合を読んでしまうこと

もっと、「隔離性水準」について調べてみよう。

戻る 一覧へ 次へ