查询单个表的所有主外键关系
select a.owner 主键拥有者
,a.table_name 主键表
,b.column_name 主键列
,C.OWNER 外键拥有者
,c.table_name 外键表
,d.column_name 外键列from user_constraints aleft join user_cons_columns b
on a.constraint_name=b.constraint_nameleft join user_constraints C
ON C.R_CONSTRAINT_NAME=a.constraint_nameleft join user_cons_columns d
on c.constraint_name=d.constraint_namewhere a.constraint_type='P'
and a.table_name='XXX' --需要查看主外键关系的表order by a.table_name
所有表的主外键关系查询:
select a.table_name 主表,
b.table_name 子表,
column_name 键,
substr(position,1,1) P
from
user_constraints a, user_constraints b, user_cons_columns c
where
a.constraint_name = b.r_constraint_name
and a.constraint_name = c.constraint_name
order by 1, 2, 4;
--转自