ヘッダーをスキップ

Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド リリース6.0 B25770-01 |
| 目次 | 索引

前へ | 次へ |

## LOAD CACHE GROUP

LOAD CACHE GROUP文は、Oracle表からTimesTenキャッシュ・グループにデータをロードします。

この文は、ユーザー管理キャッシュ・グループでのみ使用できます。キャッシュ・グループの型の詳細は、「ユーザー管理キャッシュ・グループおよびシステム管理キャッシュ・グループ」を参照してください。

アクセス制御

TimesTenインスタンスでアクセス制御が有効な場合、この文にはADMIN権限が必要です。

SQL構文
LOAD CACHE GROUP [Owner.]GroupName
[WHERE ConditionalExpression]
[DURATION DurationValue]
COMMIT EVERY TransactionSize ROWS

LOAD CACHE GROUP [Owner.]GroupName
WITH ID (ColumnValueList)
[DURATION DurationValue]
パラメータ

LOAD CACHE GROUP文には、次のパラメータがあります。

[Owner.]GroupName | キャッシュ・グループに割り当てられた名前です。
TransactionSize | 処理をコミットする前にキャッシュ・グループに挿入する行数です。正の整数である必要があります。
ConditionalExpression | 操作のターゲット行を指定する検索条件です。
DurationValue | キャッシュ・インスタンスがエージングを実行する前にキャッシュにとどまる時間（分）を示す整数値を指定します。
ColumnValueList | 列の値リストを指定するリテラルまたはバインディング・パラメータのリストです。

説明

- キャッシュ・グループの定義を満たし、キャッシュ・グループにまだ存在していないすべての新しいインスタンスをOracleからロードします。
- LOAD CACHE GROUPは、独自のトランザクション内で実行し、トランザクション内の最初の操作である必要があります。
- COMMIT句を省略した場合、単一のトランザクション内でロードが実行され、すべての行が正常にロードされた後、処理がコミットされます。エラーが発生するとロールバックされます。行が定期的にコミットされると、エラーによって残りのロードは中止され、直前にコミットした時点までロールバックされます。
- LOAD CACHE GROUP文のWHERE句で副問合せを使用する場合、副問合せの中の表名は完全修飾されている必要があります。
- AUTOREFRESHまたはREADONLYキャッシュ・グループをロードする場合、次の条件を満たしている必要があります。

- AUTOREFRESHは一時停止の状態である必要があります。
- LOAD CACHE GROUP文では、WHERE句が使用できません。
- キャッシュ・グループは空である必要があります。

- COMMIT句を実行したときに、DDL操作が実行されているか、または指定したキャッシュ・グループに属する表に対して書込み操作（INSERT、CREATE VIEW、UPDATE）が実行されている場合は、エラーが返されます。

##### 例13.75

    CREATE CACHE GROUP Recreation.Cache
        FROM Recreation.Clubs (
            ClubName CHAR(15) NOT NULL,
            ClubPhone SMALLINT,
            Activity CHAR(18),
            PRIMARY KEY(ClubName))
        WHERE (Recreation.Clubs.Activity IS NOT NULL);
    LOAD CACHE GROUP Recreation.Cache
        COMMIT EVERY 30 ROWS;