Isolation
デフォルトでは、TimesTenでは、コミット読取り分離が使用されます。Isolation属性では、接続トランザクションの初期分離レベルを指定します。分離レベルの詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』の「分離およびロックによる並行性制御」を参照してください。
この値は、ALTER SESSION文(『Oracle TimesTen In-Memory Database SQLリファレンス』を参照)を使用して変更できます。例:
ALTER SESSION SET ISOLATION_LEVEL=serializable;
CREATE CACHE GROUP
、ALTER CACHE GROUP
およびDROP CACHE GROUP
文は、シリアライズ可能分離モードでサポートされません。
パススルーまたは伝播キャッシュ機能が使用されている場合、TimesTenの分離レベルの設定はOracleセッションに継承されます。TimesTenのシリアライズ可能なモードは、Oracleのシリアライズ可能なモードにマップされます。TimesTenのコミット読取りモードは、Oracleのコミット読取りモードにマップされます。PassThrough属性の詳細は、「PassThrough」を参照してください。
PassThrough
を3に設定した場合は、ALTER SESSION
文を使用してOracle Database接続時の分離レベルを永続的に変更する必要があります。たとえば、DSN repdb1_221
に接続するには、次のように実行します。
-
ttIsql
をコールし、DSN
にPassThrough
レベル3
で接続します。% ttIsql; Command> connect "dsn=repdb1_221;passthrough=3"; Connection successful:. . .PassThrough=3; <default setting Autocommit=1>
-
AutoCommit
を無効にします:Command> autocommit=0;
-
PassThrough
を一時的に0
に変更します。Command> passthrough=0;
-
分離レベルをシリアライズ可能に変更します。
Command> prepare 1 ALTER SESSION SET ISOLATION_LEVEL=serializable; commit; exec=1;
必要な権限
この属性の値の変更に権限は必要ありません。
TimesTen ScaleoutおよびTimesTen Classicでの使用
この属性はTimesTen Classicでサポートされています。
TimesTen Scaleoutでは、Isolation=1
のみがサポートされています。
設定
Isolation
は次のように設定します。
属性の設定場所 | 属性の表示 | 設定 |
---|---|---|
CまたはJavaプログラム、あるいはUNIXおよびLinuxシステムのTimesTen Classicの |
|
|
Windows ODBCデータソース・アドミニストレータ |
該当なし |