自動リフレッシュを使用したキャッシュ・グループ用のOracle Databaseオブジェクトの手動作成
initCacheAdminSchema.sql
スクリプトで、自動リフレッシュを使用したキャッシュ・グループの定義済動作を実行するために使用するOracle Databaseオブジェクトを作成した場合は、特定の手順を実行する必要があります。
「initCacheAdminSchema.sqlスクリプト」を参照してください。
次の例では、initCacheAdminSchema.sql
スクリプトを使用してOracle Databaseオブジェクトを作成するときに読取り専用キャッシュ・グループを作成する方法を示します。
最初の文で、自動リフレッシュ状態がOFF
に設定された読取り専用キャッシュ・グループcustomer_orders
が作成されます。ttIsql
ユーティリティのcachesqlget
コマンドで生成されたSQL*Plusスクリプトは、/tmp/obj.sql
ファイルに保存されます。最後の文によって、キャッシュ・グループの自動リフレッシュ状態がPAUSED
に変更されます。
CREATE READONLY CACHE GROUP customer_orders
AUTOREFRESH STATE OFF
FROM sales.customer
(cust_num NUMBER(6) NOT NULL,
region VARCHAR2(10),
name VARCHAR2(50),
address VARCHAR2(100),
PRIMARY KEY(cust_num)),
sales.orders
(ord_num NUMBER(10) NOT NULL,
cust_num NUMBER(6) NOT NULL,
when_placed DATE NOT NULL,
when_shipped DATE NOT NULL,
PRIMARY KEY(ord_num),
FOREIGN KEY(cust_num) REFERENCES sales.customer(cust_num));
% ttIsql "DSN=cache1;UID=cacheadmin;PwdWallet=/wallets/cacheadminwallet"
Command> cachesqlget INCREMENTAL_AUTOREFRESH customer_orders INSTALL /tmp/obj.sql;
Command> exit
% sqlplus sys as sysdba
Enter password: password
SQL> @/tmp/obj
SQL> exit
ALTER CACHE GROUP customer_orders SET AUTOREFRESH STATE PAUSED;
『Oracle TimesTen In-Memory Databaseリファレンス』の「ttIsql」および「ttCacheSqlGet」を参照してください。