最近のアクセス:
[Isolation level] プロパティ

プログラムで作成された変更のアイソレーションレベルを設定します。

Read Committed このアイソレーションレベルでは、ほかのユーザーによる変更はコミットが実行されるまでプログラムからは認識できません。 これが既定値です。
Repeatable Read このアイソレーションレベルでは、プログラムがコミットを行うまで、参照されるすべてのレコードに対して、ほかのユーザーによって行われた更新を読み取りません。
Serializable このアイソレーションレベルでは、プログラムがコミットを行うまで、参照されるすべてのレコードに対して、ほかのユーザーによって行われた更新、挿入、または削除を読み取りません。
Read Uncommitted このアイソレーションレベルでは、プログラムがまだコミットを実行していない場合でも、他のユーザーが行った変更を確認します。

適用範囲

データストアで利用できます。
データストア: Iseries、DB2 UDB、INFORMIX、MYSQL、ORACLE、POSTGRESQL、SQLSERVER
ジェネレーター: .NETJava

説明

アイソレーションレベルの設定は、読み取りと並行処理のコントロールに影響します。Read Committed を使用すると、より高いレベルの一貫性が得られますが、データベースのロックが多くなります。アイソレーションレベルの詳細については、https://en.wikipedia.org/wiki/Isolation_(database_systems) およびほかの DBMS のドキュメントを参照してください。 
重要:
  • このプロパティは Oracle では読み取り専用となり、値は Read Committed です (Oracle のデータベースではダーティーリードは行われず、ダーティーリードを許可することもありません)。 
  • SQLite (Android および iOS プログラム) で使用されるアイソレーションレベルは Read Committed です。

実行時/設計時

このプロパティは設計時にのみ適用されます。

次のプロシージャーが定義されている、項目属性 A、B のトランザクションを考えてみます。
Procedure1
//項目属性に新しい値を入力し、変更をコミット。
new
  A=1
  B=1
endnew

commit

//ほかの新しい値を入力するが、今回は確定しない。

new
  A=2
  B=2
endnew

///B の値を含むメッセージを画面に出力。

for each
   msg(B.ToString()) //どのアイソレーションレベルでも、1 と 2 が表示される。
endfor

//Procedure2 を実行。
Procedure2()

//Procedure2 の実行後、B の値を含むメッセージを内部変数に格納し、処理を続行
// (プログラムの処理が終了するまで、ユーザーにメッセージは表示されない)。 
//次に、これまでに行った変更を保存。

for each
    msg(B.ToString(), nowait) //Read Uncommited と Read Commited には、11、2、3 が表示される。 
//Repeatable Read および Serializable 1、2。
endfor

commit

//メッセージを B の値とともに内部変数に保存し、処理を続行。
for each
    msg(B.ToString(), nowait) //Serializable 以外のアイソレーションレベルでは、11、2、および 3 が表示される。 
//Serializable では、Procedure2 で更新または新規作成を実行できなかったため、 
//1、2 と表示され、コミットされていない変更がある。
endfor
Procedure2 は新しい LUW で Execute を設定しました。
//B の値を画面に表示する。
for each 
  msg(B.ToString()) //Read Uncommited では 1 と 2 が表示され、その他では 1 のみが表示される。
endfor

//A の値が 1 である限り、B の値を更新する。
for each
  where A = 1
  B=11
Endfor

//A と B に新しい値を追加する。
new
  A = 3
  B = 3
endnew

 
 

プロパティの変更の適用方法

プロパティの値を設定したときに、それに対応する変更を適用するには、 [ すべてリビルド ] を実行します。

参考情報

SAC #43993 には、設定ファイル、変換などの関連情報についての詳細が記載されています。


サブページ
Created: 14/09/18 03:46 by Admin Last update: 24/11/04 20:38 by Admin
カテゴリ
Powered by GXwiki 3.0