ttCacheSqlGet

このプロシージャは、キャッシュ・グループのOracleオブジェクトをインストールまたは削除するOracle Database SQL文を生成します。

このプロシージャは、次に対する文を生成します:

  • 読取り専用キャッシュ・グループ

  • 増分自動リフレッシュが指定されたユーザー管理キャッシュ・グループ

  • 非同期ライトスルー(AWT)キャッシュ・グループ

このプロシージャは、キャッシュ・グループを作成しているユーザーにOracle Databaseに書き込むための適切な権限がない場合に有効です。そのため、Oracle DBAではこの組込みプロシージャによって生成されたスクリプトを使用してOracle Databaseオブジェクトを作成できます。

必要な権限

このプロシージャには、CACHE_MANAGER権限が必要です。

TimesTen ScaleoutおよびTimesTen Classicでの使用

このプロシージャは、TimesTen ClassicとTimesTen Scaleoutの両方でサポートされています。

関連ビュー

このプロシージャには関連ビューはありません。

構文

ttCacheSqlGet('feature_name', 'cache_group_name', install_flag)

パラメータ

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

パラメータ 説明

feature_name

TT_VARCHAR (100)

INCREMENTAL_AUTOREFRESHまたはASYNCHRONOUS_WRITETHROUGHに指定できます。

cache_group_name

TT_VARCHAR (100)

キャッシュ・グループの名前。非同期ライトスルー・キャッシュ・グループのオブジェクトをインストールする場合、または自動リフレッシュ・ユーザー・アカウント内のすべてのOracle Databaseオブジェクトを削除する場合には、NULLを指定します。

install_flag

TT_INTEGER NOT NULL

install_flagが1の場合、ttCacheSqlGetは、自動リフレッシュまたは非同期ライトスルーのOracle DatabaseオブジェクトをインストールするOracle SQLを返します。

install_flag0の場合、ttCacheSqlGetは、すでに作成されているオブジェクトを削除するSQLを返します。

結果セット

ttCacheSqlGetは次の結果セットを返します。

説明

retval

TT_VARCHAR(4096) NOT NULL

自動リフレッシュまたは非同期ライトスルーのOracle Databaseオブジェクトをインストールまたは削除するOracle SQL文。

continueFlag

TT_SMALLINT NOT NULL

結果列retvalのOracle SQL文が4096バイトを超え、次の結果行に続ける必要がある場合のみ、0(ゼロ)以外の値になります。

CALL ttCacheSqlGet('INCREMENTAL_AUTOREFRESH', 'westernCustomers', 1);

自動リフレッシュ・ユーザー・アカウントのすべてのOracle Databaseオブジェクトを削除するには、次のコマンドを使用します。

CALL ttCacheSqlGet('INCREMENTAL_AUTOREFRESH', NULL, 0);

ノート

  • このプロシージャは、キャッシュ操作でのみ使用可能です。

  • 返される各retvalフィールドには、Oracle Databaseで直接実行できる個別のOracle SQL文が含まれます。continueFlagフィールドで示されるように、1つの行は文の中央で終わる場合があります。この場合、使用可能なSQL文を生成するために、前の行と連結する必要があります。

  • このプロシージャのスクリプト出力は、OracleのSQL*Plusユーティリティと互換性がありません。ただし、ttIsql cachesqlgetコマンドを使用すると、SQL*Plusユーティリティと互換性のあるスクリプトを生成できます。

  • cache_group_nameオプションに対してNULLを指定すると、ttDestroyユーティリティによってデータベースが破棄された後でOracle DatabaseオブジェクトをクリーンアップするOracle SQLを生成できます。