SQL> SELECT 2 table_name, constraint_name, 3 r_constraint_name 4 FROM user_constraints 5 WHERE 6 Table_Name in ('D_CUSTOMER','D_CUST_AUTH_PERSON','D_CUST_AUTH_CARD','',Upper('d_cust_auth_card_ dup')) 7 / TABLE_NAME CONSTRAINT_NAME R_CONSTRAINT_NAME ------------------------------ ------------------------------ ------------------------------ D_CUSTOMER KDE_PK D_CUST_AUTH_CARD KKE_EBR_FK EBR_PK D_CUST_AUTH_CARD KKE_PK D_CUST_AUTH_CARD_DUP CHILD_FK KKE_PK D_CUST_AUTH_PERSON EBR_PK D_CUST_AUTH_PERSON EBR_KDE_FK_1 KDE_PK 6 rows selected. SQL> SQL> SELECT LEVEL, 2 table_name, constraint_name, 3 r_constraint_name 4 ,SYS_CONNECT_BY_PATH (table_name, '/') PATH 5 FROM user_constraints 6 WHERE 7 Table_Name in ('D_CUSTOMER','D_CUST_AUTH_PERSON','D_CUST_AUTH_CARD','',Upper('d_cust_auth_card_ dup')) 8 Connect By prior constraint_name = r_constraint_name 9 / LEVEL TABLE_NAME CONSTRAINT_NAME R_CONSTRAINT_NAME PATH ---------- ------------------------------ ------------------------------ --------------------------- 1 D_CUST_AUTH_CARD KKE_EBR_FK EBR_PK /D_CUST_AUTH_CARD 1 D_CUST_AUTH_PERSON EBR_KDE_FK_1 KDE_PK /D_CUST_AUTH_PERSON 1 D_CUST_AUTH_CARD_DUP CHILD_FK KKE_PK /D_CUST_AUTH_CARD_DUP 1 D_CUST_AUTH_PERSON EBR_PK /D_CUST_AUTH_PERSON 2 D_CUST_AUTH_CARD KKE_EBR_FK EBR_PK /D_CUST_AUTH_PERSON/D_CUST_AUTH_CARD 1 D_CUSTOMER KDE_PK /D_CUSTOMER 2 D_CUST_AUTH_PERSON EBR_KDE_FK_1 KDE_PK /D_CUSTOMER/D_CUST_AUTH_PERSON 1 D_CUST_AUTH_CARD KKE_PK /D_CUST_AUTH_CARD 2 D_CUST_AUTH_CARD_DUP CHILD_FK KKE_PK /D_CUST_AUTH_CARD/D_CUST_AUTH_CARD_DUP Relation is D_CUSTOMER ---- D_CUST_AUTH_PERSON --- D_CUST_AUTH_CARD --- D_CUST_AUTH_CARD_DUP Heirarchy should be displayed as when childs are displayed complete information of parent should also be displayed. i.e. root/..../child in our case for table D_CUST_AUTH_CARD_DUP path should come as /D_CUSTOMER/D_CUST_AUTH_PERSON/D_CUST_AUTH_CARD/D_CUST_AUTH_CARD_DUP