2011-10-05 78 views
10

我想編寫一個select語句來顯示錶用戶索引的數據字典中存在的index_name,table_name,table_owner和唯一性。任何幫助都會很棒。我的問題是我還沒有能夠找到如何顯示一個index_name和表所有者。如何在Oracle中獲取有關索引和表所有者的信息?

SELECT owner, table_name FROM dba_tables; 

這給出了大部分。

+3

這個問題很瑣碎通過閱讀手冊來回答。我已經向您指出了Oracle在線文檔,但爲了將來的參考,Oracle數據庫參考中介紹了所有數據字典視圖。在此處查找:http://download.oracle.com/docs/cd/E11882_01/server.112/e24448/index.htm#US – APC

回答

30

按照docs,你可以做:

select INDEX_NAME, TABLE_OWNER, TABLE_NAME, UNIQUENESS from USER_INDEXES 

select INDEX_NAME, TABLE_OWNER, TABLE_NAME, UNIQUENESS from ALL_INDEXES 
如果你希望所有指標

...

5
select index_name, column_name 
from user_ind_columns 
where table_name = 'NAME'; 

或使用本:

select TABLE_NAME, OWNER 
from SYS.ALL_TABLES 
order by OWNER, TABLE_NAME 

且索引:

select INDEX_NAME, TABLE_NAME, TABLE_OWNER 
from SYS.ALL_INDEXES 
order by TABLE_OWNER, TABLE_NAME, INDEX_NAME 
相關問題