ALTER TABLE...MOVE PARTITIONコマンドを使用して、パーティションまたはサブパーティションを別のテーブルスペースに移動できます。
概要
ALTER TABLE...MOVE PARTITIONコマンドには2つの形式があります。
- 最初の形式は、パーティションを新しいテーブルスペースに移動することです:
ALTER TABLE table_name MOVE PARTITION partition_name TABLESPACE tablespace_name;
- 2番目の形式は、サブパーティションを新しいテーブルスペースに移動することです:
ALTER TABLE table_name MOVE SUBPARTITION subpartition_name TABLESPACE tablespace_name;
ALTER TABLE...MOVE PARTITIONコマンドの構文は、パーティションとサブパーティションを区別しません。
- パーティションを移動するには、move partition句またはMOVE SUBPARTITION句を使用します。
- サブパーティションは、move PARTITION句またはMOVE subpartition句を使用して移動できます。
説明
ALTER TABLE...MOVE PARTITIONコマンドは、パーティションまたはサブパーティションを現在のテーブルスペースから別のテーブルスペースに移動します。 ALTER table... MOVE PARTITIONまたはALTER TABLE...MOVE SUBPARTITIONを呼び出すテーブルを所有する必要があります。
パラメーター
パラメーター | 説明 |
table_name | パーティションが存在するテーブルの名前 (オプションでスキーマ修飾) 。 |
partition_name | 移動するパーティションまたはサブパーティションの名前。 |
tablespace_name | パーティションまたはサブパーティションの移動先のテーブルスペースの名前。 |
例-パーティションを別のテーブルスペースに移動する
次の例では、あるテーブルスペースから別のテーブルスペースに sales テーブルのパーティションを移動します。 まず、次のコマンドを実行してsalesテーブルを作成します。
(
dept_no number,
part_no varchar2,
country varchar2(20),
date date,
金額番号
)
範囲によるパーティー (日付)
(
PARTITION q1_2012 VALUES LESS THAN ('2012-Apr-01'),
PARTITION q2_2012 VALUES LESS THAN ('2012-Jul-01'),
PARTITION q3_2012 VALUES LESS THAN ('2012-Oct-01'),
PARTITION q4_2012 VALUES LESS THAN ('2013-Jan-01') TABLESPACE ts_1,
パーティーq1_2013の値は ('2013-Mar-01 ') テーブルスペースts_2
);
ALL_TAB_PARTITIONSビューを照会すると、パーティションが予想されるサーバーとテーブルスペースにあることが確認されます:
acctg=# SELECT partition_name, tablespace_name FROM ALL_TAB_PARTITIONS;
partition_name | tablespace_name
---------------- ------------- -----------------
q1_2013 | ts_2
q4_2012 | ts_1
q3_2012 |
q2_2012 |
q1_2012 |
(5行)
ターゲットテーブルスペースを準備したら、ALTER TABLE...MOVE PARTITIONコマンドを呼び出して、q1_2013パーティションをts_2という名前のテーブルスペースからts_3という名前のテーブルスペースに移動します。
ALTER TABLE sales move partition q1_2013 tablespace ts_3;
ALL_TAB_PARTITIONSビューのクエリは、移動が成功したことを示しています:
acctg=# SELECT partition_name, tablespace_name FROM ALL_TAB_PARTITIONS;
partition_name | tablespace_name
---------------- + -----------------
q1_2013 | ts_3
q4_2012 | ts_1
q3_2012 |
q2_2012 |
q1_2012 |
(5行)