プライマリ・コンテンツに移動
Oracle® Database VLDBおよびパーティショニング・ガイド
12c リリース1 (12.1)
B71291-10
目次へ移動
目次
索引へ移動
索引

前
次

索引パーティションの追加

ローカル索引には、明示的にパーティションを追加できません。かわりに、基礎となる表にパーティションを追加する場合にのみ、ローカル索引に新しいパーティションが追加されます。特に、表にローカル索引が定義されていて、パーティションを追加する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 INDEXADD PARTITION構文を使用して、ハッシュ・パーティション・グローバル索引にパーティションを追加できます。データベースによりハッシュ・パーティションが追加され、索引の既存のハッシュ・パーティションから再度ハッシュされた索引エントリが、ハッシュ関数で決定されたとおりに移入されます。次の文では、「ハッシュ・パーティション・グローバル索引の作成」に示されている索引hgidxに、パーティションを追加します。

ALTER INDEX hgidx ADD PARTITION p5;

最高位パーティションにはMAXVALUEというパーティション・バウンドがあるため、レンジ・パーティション・グローバル索引にはパーティションを追加できません。新しい最高位パーティションを追加するには、ALTER INDEX SPLIT PARTITION文を使用します。