シリアライズ可能な読み取り分離レベルと反復可能な読み取り分離レベルの違いは何ですか? 誰でも簡単な例を教えてください。
2 に答える
概要:
Repeatable Read 分離レベルでは、新しい行をデータセットに挿入できます。
Serializable 分離レベルでは、すべての行がトランザクションの間ロックされ、挿入、更新、または削除は許可されません。
例と説明については、これらを参照してください。
元のリンクが壊れています — Wayback Machine のリンクは同じ日時のものです。
分離レベル — シリアライズ可能
Wayback Machine SQL Server トランザクション レベル シリアライズ可能
分離レベル — 繰り返し読み取り
Wayback Machine SQL Server トランザクション レベルの反復可能な読み取り
反復可能な読み取りは、反復不可能な読み取りのみを防ぎます (そのため、誰かが変更することを恐れずに、同じトランザクションで同じデータを読み取ることができます - それを行う必要はめったにありません)。
Serializableは、反復不可能な読み取りとファントム行の両方を防ぎます (したがって、データを挿入することさえできません)。つまり、シリアル化可能なトランザクションに含まれていない行を READ および WRITE (SELECT、UPDATE) できますが、TABLE レベルで行を DELETE または INSERT することはできません。
反復可能読み取りとシリアライズ可能はどちらも非常に厳密であり、常に必要というわけではありません!