トランザクションの 4 つの分離レベルは次のとおりです: 1. コミットされていないコンテンツの読み取り (Read Uncommitted)、2. 送信されたコンテンツの読み取り (Read Committed)、3. 反復可能な読み取り (Repeatable Read)、4. シリアル化可能。
トランザクションの 4 つの分離レベル:
(推奨学習: mysql チュートリアル)
1. コミットされていない読み取り -- コミットされていないコンテンツの読み取り
2. コミットされた読み取り -- 送信されたコンテンツを読み取ります
A トランザクションはデータ テーブルの内容をクエリするだけで、B トランザクションは追加、削除、および変更操作を実行しますが、コミット (送信) はしません
トランザクション クエリはテーブル内のデータ変更の内容を見つけることができません
B トランザクションの送信
A によって見つかったデータ変更 (A は 2 回クエリを実行し、結果は異なります -反復不可読み取り)
3. 反復可能読み取り -- 再読み取り可能
A トランザクションはデータ テーブルの内容のみをクエリし、トランザクション B は実行します追加、削除、および変更操作は実行されますが、コミットはされません
トランザクション クエリがテーブル内のデータ変更の内容を見つけることができません
B トランザクションの送信
A トランザクション クエリの内容テーブル内のデータ変更の一部が見つかりません
#A は送信しますA はテーブル内のデータの変更をクエリできます4. シリアル化可能 -- シリアル化可能
#最高の分離レベル
共有ロックをトランザクションに追加します。同時に実行できるトランザクション操作は 1 つだけです。ファントム読み取り問題を解決する時間
大量のタイムアウトとロック競合の問題が発生します
以上がトランザクションの 4 つの分離レベルとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。