ローカル索引には、明示的にパーティションを追加できません。かわりに、基礎となる表にパーティションを追加する場合にのみ、ローカル索引に新しいパーティションが追加されます。特に、表にローカル索引が定義されていて、パーティションを追加するALTER
TABLE
文を発行する場合には、一致するパーティションがローカル索引にも追加されます。データベースにより、新しい索引パーティションに名前とデフォルトの物理記憶域属性が割り当てられますが、ADD
PARTITION
操作が完了した後にそれらを変更できます。
ADD
PARTITION
操作で、最初に索引のデフォルト属性を変更することにより、索引パーティションの新しい表領域を事実上指定できます。たとえば、リスト・パーティション表q1_sales_by_region
に、ローカル索引q1_sales_by_region_locix
を作成したとします。「リスト・パーティション表へのパーティションの追加」に示されているように、新しいパーティションq1_nonmainland
を追加する前に次の文を発行した場合、対応する索引パーティションは表領域tbs_4
に作成されます。
ALTER INDEX q1_sales_by_region_locix MODIFY DEFAULT ATTRIBUTES TABLESPACE tbs_4;
それ以外の場合は、追加した後に、次の文を使用して索引パーティションをtbs_4
に移動する必要があります。
ALTER INDEX q1_sales_by_region_locix REBUILD PARTITION q1_nonmainland TABLESPACE tbs_4;
ALTER
INDEX
のADD
PARTITION
構文を使用して、ハッシュ・パーティション・グローバル索引にパーティションを追加できます。データベースによりハッシュ・パーティションが追加され、索引の既存のハッシュ・パーティションから再度ハッシュされた索引エントリが、ハッシュ関数で決定されたとおりに移入されます。次の文では、「ハッシュ・パーティション・グローバル索引の作成」に示されている索引hgidx
に、パーティションを追加します。
ALTER INDEX hgidx ADD PARTITION p5;
最高位パーティションにはMAXVALUE
というパーティション・バウンドがあるため、レンジ・パーティション・グローバル索引にはパーティションを追加できません。新しい最高位パーティションを追加するには、ALTER
INDEX
SPLIT
PARTITION
文を使用します。