0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Oracle】INDEXの確認、作成、削除、再有効化

Posted at

#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
;
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?