Oracleのインデックス(INDEX)の表領域を変更するSQL

Oracleのインデックス(INDEX)の表領域を変更するSQL

Oracleのインデックスは作成後でも表領域を変更することができます。

-- インデックスの表領域を変更
ALTER INDEX {インデックス} REBUILD TABLESPACE {変更後の表領域};

例1. インデックスindex1の表領域を変更する

-- インデックスindex1の表領域をidxsp2に変更
ALTER INDEX index1 REBUILD TABLESPACE idxsp2;

インデックス「index1」の表領域をidxsp1→idxsp2に変更しました。(元の表領域は記述しません) これで表領域の変更はできましたが、インデックスは無効になってしまいます。なのでインデックスを再作成する必要があります。

インデックスを再作成するSQL

-- インデックスを再作成する
ALTER INDEX index1 REBUILD;

これでインデックスindex1を再作成して使える状態になりました。

以上、Oracleのインデックス(INDEX)を表領域を変更するSQLでした。

コメント