タスク3: TimesTenデータベースでの動的読取り専用キャッシュ・グループの作成
TimesTenデータベースで、自動リフレッシュを指定した動的読取り専用キャッシュ・グループを作成します。
-
引き続きTimesTenキャッシュ管理ユーザーとして、
CREATE DYNAMIC READONLY CACHE GROUP
SQL文を使用して自動リフレッシュを指定した動的読取り専用キャッシュ・グループを作成します。一意の索引列を主キー定義として使用します。読取り専用キャッシュ・グループには、デフォルトで自動リフレッシュが構成されることに注意してください。Command> CREATE DYNAMIC READONLY CACHE GROUP customer_orders AUTOREFRESH FROM sales.customers (cust_num NUMBER(6) NOT NULL, region VARCHAR2(10), name VARCHAR2(50), 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.customers(cust_num)); Command> exit; Disconnecting... Done.
ノート:
このSQL文は、キャッシュ・グループとキャッシュ表をTimesTenデータベースに作成します。
TimesTenキャッシュ表の列に対してデータ型を選択する場合は、Oracle Database表の列のデータ型を考慮し、キャッシュ表の列に対して同等または互換性のあるデータ型を選択してください。「Oracle Databaseデータ型とTimesTenデータ型の間のマッピング」を参照してください
-
ttIsql
ユーティリティを起動して、cache1
DSNにインスタンス管理者として接続します。sales.customers
およびsales.orders
キャッシュ表に対するSELECT
権限をTimesTenキャッシュ管理ユーザーに付与して、このユーザーがこの表に対してSELECT
問合せを発行できるようにします。% ttIsql cache1 Command> GRANT SELECT ON sales.customers TO cacheadmin; Command> GRANT SELECT ON sales.orders TO cacheadmin; Command> exit; Disconnecting... Done.
これは自動リフレッシュを指定した動的読取り専用キャッシュ・グループであるため、Oracleデータベースのすべての変更は、デフォルトの間隔で自動的にキャッシュ・グループにリフレッシュされます。修飾SQL文を使用して、キャッシュに存在しないデータを動的にリクエストできます。DML文は、TimesTenデータベース内の読取り専用キャッシュ表に対して直接実行しないでください。