ISOLATION バインド・オプション
ISOLATION オプションは、アプリケーションを、実行中の別のアプリケーションの影響からどの程度分離するかを判別します。
| コマンド・オプション | オプションの値 | と併用 |
|---|---|---|
| ISOLATION |
|
注:
- ISOLATION 結合オプションは、ネイティブSQLプロシージャまたは高度なトリガのパッケージのREBINDには有効ではありません。
- ISOLATION( CS )
- カーソル安定性オプションは、繰り返し読み取りができるように、他のプロセスが変更中の行を、そのプロセスがその行の変更を終了するまで、アプリケーションが読み取らないようにします。 カーソル固定が反復可能読み取りとは異なる点として、 アプリケーションが読み取る行をプログラムがコミットまたは終了するまで 他のアプリケーションが変更しないようにすることはありません。
- ISOLATION(RR)
- 繰り返し可能な読み取りオプションにより、次のことが保証されます
- 別の処理が変更した行を、その処理が解放するまでアプリケーションが読み取らない。
- アプリケーションが読み取る行を、そのアプリケーションがコミットまたは終了するまで 他の処理が変更しない。
- ISOLATION(RS)
- 読み取り安定性オプションは、次のことを保証します
- 別の処理が変更した行を、その処理が解放するまでアプリケーションが読み取らない。
- 他の処理はユーザーのアプリケーションがコミットするかまたは終了する まで、当該アプリケーションの探索条件を満足する行は変更しません。 他のアプリケーション処理 では、行を挿入したり、探索条件を最初に満足しなかった行を変更したりすることはできます。
サーバーが RS をサポートしていない場合は、RR を使用します。
- ISOLATION(UR)
- コミットされていない読み取りオプション。 反復可能読み取りや
カーソル固定とは異なり、非コミット読み取りで保証されることはなにもありません。 LOB データを除き、
非コミット読み取りは、データのロックを獲得せずに、次のことを可能にします。
- このアプリケーションが読み取る任意の行を、作業単位中に、他の処理が変更する。
- 他の処理が変更した行を、処理がその行をコミットしていなくても、 アプリケーションで読み取る。
このオプションを使用できるのは、読み取り専用操作の場合、 および読み取り専用カーソルを使用する SELECT、SELECT INTO、 あるいは FETCH の場合だけです。 その他の操作でISOLATION(UR)を指定した場合、 Db2 はISOLATION(CS)を使用します。
- ISOLATION(NC)
- Db2 for z/OS® 以外の特定のサーバーにバインドされているパッケージでは、 コミットしないオプションが使用されます。 Db2 for z/OS NCをサポートしていません。 サーバーが この分離レベルをサポートしていなければ、UR が使用されます。
デフォルト値 ISOLATION
| 処理 | デフォルトの 値 |
|---|---|
| BIND SERVICE | CS |
| BIND PLAN | CS |
| BIND PACKAGE |
|
| REBIND PLAN | 既存の値 |
| REBIND PACKAGE | 既存値。 ISOLATION を指定の値からプラン値のデフォルト へ REBIND PACKAGE を使用して変更することはできません。 これを行うには、 BIND PACKAGE ACTION(REPLACE) を使用することが必要です。 |
カタログレコード ISOLATION
SYSPACKAGE カタログ・テーブルおよび SYSPLANカタログ・テーブルのISOLATION列を参照してください。