Zanotowałem następującą kwerendę, która będzie zawierać nazwę indeksu i jego kolumny dla danej tabeli:jak znaleźć wszystkie indeksy i ich kolumny tabel, widoków i synonimów Oracle
select
b.uniqueness, a.index_name, a.table_name, a.column_name
from all_ind_columns a, all_indexes b
where a.index_name=b.index_name
and a.table_name = upper('table_name')
order by a.table_name, a.index_name, a.column_position;
chcę zmodyfikować tak, że jeśli przejdę w view
lub synonym
również to działa. Nasz system ma odmiany widoków, synonimów, więc bardzo pomocne będzie posiadanie jednego zapytania, do którego mogę podać nazwę (niezależnie od tego, czy jest to synonim widoku lub tabela), i wyplułoby indeksy i ich kolumny.
Przypuszczam, że chce indeksów z tabel zależnych za widok – dpbradley
W tym przypadku może to być trudne, ale trzeba pracować z ALL_DEPENDENCIES i od widoku mogą być oparte na inny widok (inne widoki), prawdopodobnie wymaga również zapytania hierarchicznego (CONNECT BY). –
Synonimy mogą również wskazywać na widoki. –