Press "Enter" to skip to content

Getting Foreign Key Column Names Which Are Not Indexed In Oracle

Suppose you have a standard for your database that all foreign key columns must have indexes created for them and  you want to verify that all foreign key columns are indexed or not.

The following query will get you the names of foreign key columns for which index have not been created in Oracle:

a.constraint_name cons_name
,a.table_name tab_name
,b.column_name cons_column
,nvl(c.column_name,’***No Index***’) ind_column
from user_constraints a
user_cons_columns b on a.constraint_name = b.constraint_name
left outer join
user_ind_columns c on b.column_name = c.column_name
and b.table_name = c.table_name
where constraint_type = ‘R’
order by 2,1;

Vinish Kapoor

I am a full stack developer and writing about development. I document everything I learn and help thousands of people. is created, written, and maintained by me, it is built on WordPress, and hosted by Bluehost. Connect with me on Facebook, Twitter, GitHub and get notifications for new posts.

You may also like:

Be First to Comment

    Leave a Reply

    Your email address will not be published. Required fields are marked *