【Oracle索引】-索引基本概念

kakaxi9521發表於2016-12-28
當訪問表中的資料時,Oracle提供了兩種方式:從表中讀取所有行(即全表掃描),或者透過ROWID一次讀取一行。

一般來說,索引能提高查詢的效能。select 語句、update和delete命令的where 子句的效能(當訪問的行較少時)可以藉助索引獲得提高。 增加索引會降低insert語句的效能(需要同時對錶和索引進行操作)。索引列上的update操作將會比沒有加索引慢很多,因為資料庫必須管理對錶和索引的改動。此外,大量行的delete 操作將會由於表中存在索引而變慢。

透過查詢dba_indexes檢視可以獲得一個表上所有索引的清單,也可以透過訪問user_indexes檢視查詢當前方案(schema)的索引。查詢all_indexes檢視可以檢視能夠訪問的所有表的索引。

user_indexes會顯示查詢表的索引,但是不會顯示每個索引中包含的列。 為了獲取當前使用者的表中被索引的列的資訊,可以查詢user_ind_columns檢視;DBA可以透過訪問dba_ind_columns檢視檢索所有方案中被索引的列,透過all_ind_columns檢視可以檢視當前使用者有權看到的所有表的索引列。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21374452/viewspace-2131515/,如需轉載,請註明出處,否則將追究法律責任。

相關文章