索引是數據庫服務器用來加快檢索的速度,再經過加了索引的列進行檢索
時候,數據庫會自動使用索引,使用索引所在的列值進行快速檢索,快速定位到
真實的數據內容。數據庫
1.頻繁使用where字句或鏈接條件
2.表比較大,數量多
3.列的取值範圍廣
4.查詢結果佔比比較小服務器
1.自動建立索引:
在建立主鍵約束,惟一鍵約束,主鍵約束時會自動建立索引
2.手動建立索引:
用戶能夠在列上建立惟一索引
索引建立
CREATE INDEX 索引名字 ON table(column);
如:oracle
create index TB_SYS_DICTIONARY_idx on TB_SYS_DICTIONARY(DICT_NAME);
建立索引以後,查看索引ui
select uc.index_name,uc.COLUMN_NAME,ui.uniqueness from user_indexes ui, user_ind_columns uc where ui.index_name=uc.INDEX_NAME and uc.TABLE_NAME='TB_SYS_DICTIONARY'
其中index_name,COLUMN_NAME,顯示的時索引名稱和表中字段名稱,更多信息能夠單獨
查詢 user_indexes,user_ind_columns這兩個表,查看全部與序列有關的信息
還有一個uniqueness字段,這是顯示該索引是自動建立的仍是手動建立的,UNIQUE表示
自動建立,NONUNIQUE標識手動建立,以下剛建立的索引所示
固然,建立的索引有誤或者不經常使用時能夠刪除:
oracle drop index TB_SYS_DICTIONARY_idx;
刪除索引以後查詢以下圖所示:
顯示已經刪除索引成功,查詢中再也不顯示!3d