現在の接続のトランザクション分離レベルを、ODBC で指定した分離レベル モードのいずれかに設定します。
構文:
>>--EXEC SQL--SET TRANSACTION ISOLATION------------------->
>-------.-READ UNCOMMITTED-.---------END-EXEC------------><
+-READ COMMITTED---+
+-REPEATABLE READ--+
+-SERIALIZABLE-----+
例:
EXEC SQL SET TRANSACTION ISOLATION READ UNCOMMITTED END-EXEC
説明:
トランザクション分離レベルの設定に応じて、トランザクションは次のように相互作用できます。
これらの状況を制御するには 2 種類の方法があり、1 つはペシミスティック同時実行と呼ばれる方法で、あるトランザクションが完了するまで他のトランザクションを待機させます。もう 1 つはオプティミスティック同時実行と呼ばれる方法で、この状況が発生した場合にトランザクションを強制的にロールバックすることで同時実行への影響を抑えます (ただし、作業が強制的に繰り返される可能性があります)。
READ UNCOMMITED モードでは、ダーティ読み取り、反復不能読み取り、およびファントムをすべて使用できます。
READ COMMITED モードでは、ダーティ読み取りは使用できませんが、反復不能読み取りおよびファントムは使用できます。
REPEATABLE READ モードでは、ダーティ読み取りおよび反復不能読み取りは使用できませんが、ファントムは使用できます。
SERIALIZABLE モードでは、ダーティ読み取り、反復不能読み取り、およびファントムをすべて使用できません。
注:
ドライバーによっては、ODBC で定義した分離レベルがすべてサポートされているとは限りません。ドライバーでサポートされていないモードを設定する場合は、それに応じて SQLCODE および SQLSTATE を設定します。