#INDEXの確認、作成、削除、再有効化
##INDEXとは
INDEX(インデックス)とはテーブルにつける索引のことです。
索引をつけることで指定された条件の検索スピードが速くなることを期待できます。
本の目次をイメージしてもらうとよいかと思います。
#INDEXの確認
以下のコードではINDEXがすでに対象のテーブルに張られているかを確認しています。
また、項目が多いため必要な項目のみ出力することをお勧めします。
-- INDEXの確認
SELECT INDEX_NAME,TABLE_OWNER,TABLE_NAME,STATUS
FROM USER_INDEXES
where table_name = 'USER'
;
#INDEXの作成
以下のコードではINDEXを作成しています。
通常、その表に対し行う検索(抽出)条件となるような項目を指定します。
また、ここでは[user_cd]のみ指定していますが、複数項目の指定が可能です。
-- INDEXの作成
CREATE INDEX user_n1 ON user(user_cd)
;
#INDEXの削除
以下のコードでは作成済みの「user_n1」というINDEXを削除しています。
-- INDEXの削除
DROP INDEX user_n1
;
#INDEXの再有効化
以下のコードではSTATUSがINVALID(無効化)されているINDEXを再有効化しています。
-- シノニムを定義する
ALTER INDEX user_n1 REBUILD ONLINE
;