ヘッダーをスキップ
Oracle TimesTen In-Memory Database APIリファレンス・ガイド
リリース7.0
E05170-03
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

PassThrough

この属性は、TimesTenのCache Connectコンポーネントとともに使用します。

この属性では、TimesTenデータ・ストアにおいてのみ実行されるSQL文、およびOracleデータベースに渡されるSQL文を指定します。TimesTenの機能であるCache Connectの詳細は、『Oracle TimesTen Cache Connect to Oracle開発者および管理者ガイド』と、『Oracle TimesTen In-Memory Database SQLリファレンス・ガイド』のCREATE CACHE GROUPに関する説明を参照してください。

準備されたPassThroughコマンドを実行する場合、Oracleの依存オブジェクトのスキーマが準備後に変更されていないと想定しています。スキーマによってPassThroughコマンドが変更されている場合は、Oracleで予期せぬ結果が発生する可能性があります。

設定

PassThroughは次のように設定します。

属性の設定場所
属性の表示
設定
CまたはJavaプログラム、あるいはUNIX ODBC.INIファイル
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以外のすべてのSQL文と、オプティマイザ・フラグを設定または取得するTimesTen組込みプロシージャが渡されます。
Windows ODBCデータソース・アドミニストレータ
「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以外のすべてのSQL文と、オプティマイザ・フラグを設定または取得するTimesTen組込みプロシージャが渡されます。

PassThrough機能を使用する場合、いくつかの制限を考慮する必要があります。次の制限があります。

次の図および表に、PassThrough属性の影響を示します。

この図は、OracleまたはTimesTenで準備されたコマンドが実行されるかどうかを確認するために、PassThrough属性の値、構文の妥当性およびオブジェクトの存在について確認する方法を示します。[テキストの説明]

文の種類
PassThrough設定=0
PassThrough設定=1
PassThrough設定=2
PassThrough設定=3
TimesTenの構文を使用し、TimesTen表のみを参照する問合せまたはプロシージャ・コール。
TimesTenで実行される。
TimesTenで実行される。
TimesTenで実行される。
Oracleにパススルーされる。
TimesTen以外の構文を使用する、またはTimesTenにない表を参照する問合せまたはプロシージャ・コール。
TimesTenで実行され、エラーを返す。
Oracleにパススルーされる。
Oracleにパススルーされる。
Oracleにパススルーされる。
対象の表がTimesTenに存在しない場合のINSERT、DELETE、MERGEまたはUPDATE文。
TimesTenで実行され、エラーを返す。
Oracleにパススルーされる。
Oracleにパススルーされる。
Oracleにパススルーされる。
対象の表がTimesTenに存在する場合のINSERT、DELETE、MERGEまたはUPDATE文。
TimesTenで実行される。
TimesTenで実行される。
TimesTenで実行される。
Oracleにパススルーされる。
対象の表がTimesTenのREADONLYキャッシュ・グループに存在する場合のINSERT、DELETE、MERGEまたはUPDATE文。
TimesTenで実行され、エラーを返す。
TimesTenで実行され、エラーを返す。
Oracleにパススルーされる。
Oracleにパススルーされる。
すべてのDDL文。
TimesTenで実行される。
TimesTenで実行される。
TimesTenで実行される。
Oracleにパススルーされる。