トランザクション分離レベルまとめ

投稿日: 更新日:

3つのリード現象

まず、前提知識として3つのリード現象を説明します。

ダーティーリード

ダーティーリードとは、未確定の変更を他の人が読み取ってしまうことです。

ダーティリードの図

ノンリピータブルリード

ノンリピータブルリードとは、他のトランクザクションの影響により同じ行を読み込んでも異なる結果となってしまうことです。

ノンリピータブルリードの図

ファントムリード

ファントムリードとは、他のトランクザクションの影響により取得する行数が変わってしまうことです。

ファントムリードの図

トランザクション分離レベル

DBMSではこれらを防止するため、いくつかの分離レベルがあります。

〇:防止可能 ✕:防止不可

分離レベルダーティーリードノンリピータブルリードファントムリード
READ UNCOMMITTED
READ COMMITTED
REPEATABLE READ
SERIALIZABLE

参考文献

すっきり分かるSQL入門第3版 飯田理恵子、中山清喬 (2022) インプレス

書いた人

profile_image

お茶の葉

物理とプログラミングが好きな人