2011-10-05 15 views
10

Deseo escribir una instrucción de selección para mostrar el nombre_índice, el nombre_tabla, el propietario_tabla y la exclusividad que existen en el diccionario de datos para los índices de usuario de la tabla. Cualquier ayuda sería genial. Mi problema es que no he podido encontrar cómo mostrar un index_name y el propietario de la tabla.¿Cómo obtengo información sobre un propietario de índice y tabla en Oracle?

SELECT owner, table_name FROM dba_tables; 

Esto le da la mayor parte.

+3

Esta pregunta es trivial para responder leyendo el manual. Ya te he señalado en la documentación en línea de Oracle, pero para referencia futura todas las vistas del diccionario de datos se describen en la Referencia de la base de datos Oracle. Encuéntrelo aquí: http://download.oracle.com/docs/cd/E11882_01/server.112/e24448/index.htm#US – APC

Respuesta

30

De acuerdo con la docs, sólo se puede hacer:

select INDEX_NAME, TABLE_OWNER, TABLE_NAME, UNIQUENESS from USER_INDEXES 

o

select INDEX_NAME, TABLE_OWNER, TABLE_NAME, UNIQUENESS from ALL_INDEXES 

si desea que todos los índices ...

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

o utilizar esto:

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

Y para Índices:

select INDEX_NAME, TABLE_NAME, TABLE_OWNER 
from SYS.ALL_INDEXES 
order by TABLE_OWNER, TABLE_NAME, INDEX_NAME 
Cuestiones relacionadas