ヘッダーをスキップ
Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド
リリース6.0
B25770-02
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

ttOptSetFlag

説明

アプリケーションで、TimesTen問合せオプティマイザによる実行計画の生成を変更できるようにします。フラグを設定して、様々なアクセス方法の使用を有効または無効にします。このコールによって加えらた変更はただちに有効になり、現在のトランザクションにおける、ODBC関数SQLPrepareおよびSQLExecDirectへの後続のすべてのコール、JDBCメソッドConnection.prepareCallおよびStatement.executeへの後続のすべてのコールに影響します。新しいトランザクションを開始するたびに、すべてのオプティマイザ・フラグはデフォルト値にリセットされます。AutoCommitがオンになっている状態でオプティマイザ・フラグを設定しても、各文は固有のトランザクション内で実行されるため、そのフラグは無視されます。

構文
ttOptSetFlag (optFlag, optVal) 
パラメータ

ttOptSetFlagには、次のパラメータがあります。

パラメータ
データ型
説明
optFlag
Char(32) NOT NULL
オプティマイザ・フラグの名前
optVal
INTEGER NOT NULL
0(無効)または1(有効)

オプティマイザ・フラグ

オプティマイザ・フラグを設定する場合は、次の文字列を使用します。大文字と小文字は区別されません。

FirstRow 
SELECT、UPDATEまたはDELETE文の最初の行の最適化を有効または無効にします。SQLキーワードのFIRSTがSQL文で使用された場合、これはオプティマイザ・ヒントより優先されます。キーワードのFIRSTは、最初の行の最適化を有効にします。第II部「TimesTen SQLリファレンス・ガイド」を参照してください。
GenPlan
残りのトランザクションでのPLAN表のエントリの作成を有効または無効にします。TimesTenの開発者ガイドの計画の生成に関する項を参照してください。
Hash
索引付けされた表スキャンで、既存のハッシュ索引の使用を許可または禁止します。
MergeJoin
2つの表を結合する方法を示します。結合の入力ストリームがソートされている場合に使用可能です。たとえば、Tツリー索引スキャンが使用される場合などです。
NestedLoop
2つの表を結合する一般的な方法を示します。
PassThrough
キャッシュ接続アプリケーションのパススルー・レベルを一時的に変更します。パススルー・レベルはいつでも設定が可能で、変更はただちに有効になります。このフラグに有効な値は次のとおりです。
0: SQL文はTimesTenに対してのみ実行されます。
1: INSERT、DELETE、UPDATEおよびDDL以外の文がTimesTenで構文エラーを生成する場合、またはこれらの文で参照されている1つ以上の表がTimesTenに存在しない場合、INSERT、DELETE、UPDATEおよびDDL以外の文が渡されます。対象の表がTimesTenで見つからない場合、すべてのINSERT、DELETEおよびUPDATE文が渡されます。DDL文は渡されません。
2: 1と同じ動作に加え、READONLYのキャッシュ・グループ表に対して実行されたすべてのINSERT、UPDATEおよびDELETE文が渡されます。
3: COMMIT、ROLLBACK、SAVEPOINT以外のすべてのSQL文と、オプティマイザ・フラグを設定または取得するTimesTen組込みプロシージャが渡されます。
トランザクションの最後に、パススルー・レベルは元の値にリセットされます。
RowLock
オプティマイザによる行ロックの使用を許可または禁止します。
Scan
全表スキャンを示します。
Rowid
Row IDの使用を許可または禁止します。
TmpHash
一時的なハッシュ・スキャンの使用を許可または禁止します。これは、文の評価で使用するために実行時に作成される索引です。索引の作成には時間がかかりますが、結合条件を評価する場合の時間を節約できます。
TblLock
オプティマイザによる表ロックの使用を許可または禁止します。
TmpTable
中間結果を一時表に格納します。この処理は、結合問合せでの条件の評価を繰り返し実行することを回避したり、結合における中間結果のスキャンを単に高速化するために選択されることもあります。
TmpTtree
一時的なTツリー・スキャンを実行します。また、マージ結合で値をソートするためにも使用できます。索引の作成には時間がかかりますが、結合条件を評価する場合の時間を節約できます。
Ttree
索引付けされた表スキャンで、既存のTツリー索引の使用を許可または禁止します。

文字列AllFlagsは、すべてのオプティマイザ・フラグを示すために使用され、文字列Defaultは、デフォルトのフラグを示すために使用されます。デフォルトには、GenPlanフラグ以外のすべてのオプティマイザ・フラグが含まれます。

フラグの説明

各フラグの値は1または0です。

結果セット

ttOptSetFlagは結果を返しません。

CALL ttOptSetFlag ( 'TmpHash', 1 ); 
関連項目

ttOptEstimateStats
ttOptGetFlag
ttOptGetOrder
ttOptSetColIntvlStats
ttOptSetOrder
ttOptSetTblStats
ttOptUpdateStats
ttOptUseIndex