In SQL below, replace the <TABLE_NAME> with the table name for which you want to list out all the referential integrity constraints:
SELECT
AC.CONSTRAINT_NAME,
ACC.COLUMN_NAME,
AR.TABLE_NAME,
ARC.COLUMN_NAME
FROM ALL_CONSTRAINTS AC,
ALL_CONSTRAINTS AR,
ALL_CONS_COLUMNS ACC,
ALL_CONS_COLUMNS ARC
WHERE AC.CONSTRAINT_TYPE = 'R'
AND AC.R_OWNER = AR.OWNER
AND AC.R_CONSTRAINT_NAME = AR.CONSTRAINT_NAME
AND AC.CONSTRAINT_NAME = ACC.CONSTRAINT_NAME
AND AC.OWNER = ACC.OWNER
AND AR.CONSTRAINT_NAME = ARC.CONSTRAINT_NAME
AND AR.OWNER = ARC.OWNER
AND AC.TABLE_NAME = UPPER('<TABLE_NAME>');
SELECT
AC.CONSTRAINT_NAME,
ACC.COLUMN_NAME,
AR.TABLE_NAME,
ARC.COLUMN_NAME
FROM ALL_CONSTRAINTS AC,
ALL_CONSTRAINTS AR,
ALL_CONS_COLUMNS ACC,
ALL_CONS_COLUMNS ARC
WHERE AC.CONSTRAINT_TYPE = 'R'
AND AC.R_OWNER = AR.OWNER
AND AC.R_CONSTRAINT_NAME = AR.CONSTRAINT_NAME
AND AC.CONSTRAINT_NAME = ACC.CONSTRAINT_NAME
AND AC.OWNER = ACC.OWNER
AND AR.CONSTRAINT_NAME = ARC.CONSTRAINT_NAME
AND AR.OWNER = ARC.OWNER
AND AC.TABLE_NAME = UPPER('<TABLE_NAME>');
No comments:
Post a Comment