アーカイブ戦略を見ると、特定のデータセットをアーカイブする必要があります。特定のサブパーティションのパーティション交換ロード
挿入/削除ルーチンではなく、パーティション交換を使用することを考えていました。
対象アーカイブ表は、日付にパーティション化された間隔範囲で、国のリスト・サブパーティションです。
交換を分割したいのは特定の国のためです。
create table
test_table
(tbl_id number,
country varchar2(2),
sales_dt date,
volume number)
partition by range (sales_dt) interval (NUMTOYMINTERVAL(1,'Month'))
subpartition by list (country)
Subpartition template
(subpartition p_ireland values ('IR'),
subpartition p_france values ('FR'),
subpartition p_other values (DEFAULT))
(partition before_2008 values less than (to_date('01-JAN-2008','DD-MON-YYYY')));
ロードされたデータは、パーティションとサブパーティションに正しく分類されます。すべてのパーティション名がシステム生成されます。
私がすべての 'FR'サブパーティションのパーティション交換に来たとき、私はロジックを特定できません。
Alter table test_table
exchange subpartition system_generated_name
with table TEST_TABLE_ARCH;
を使用して
私は、特定の '知られている' サブパーティションを交換することができます。
Oracle 11gで 'for'ロジックを使用することはできますが、構文を使用することはできません。
アイデア?
フィードバックいただきありがとうございます。優れた手順に沿って基本的なパーティション交換を行うことはできましたが、特定のサブパーティションを対象にすることはできませんでした。私は、アーカイブテーブルに挿入するマッピングと削除するマッピングの2つのマッピングのルートをたどった。 – Nitibob