zgqynx 发表于 2013-2-5 02:33:05

user_constraints知道查找外键的表

有一个表A,如果想知道这个表的主键被哪些表作为外键,则使用下面语句

select * from user_constraints t where t.r_constraint_name = 'PK_PM_PRD'

其中 'PK_PM_PRD' 是你这个表的主键的名称



select
a.owner 外键拥有者,
a.table_name 外键表,
substr(c.column_name,1,127) 外键列,
b.owner 主键拥有者,
b.table_name 主键表,
substr(d.column_name,1,127) 主键列
from
user_constraints a,
user_constraints b,
user_cons_columns c,
user_cons_columns d
where
    a.r_constraint_name=b.constraint_name
and a.constraint_type='R'
and b.constraint_type='P'
and a.r_owner=b.owner
and a.constraint_name=c.constraint_name
and b.constraint_name=d.constraint_name
and a.owner=c.owner
and a.table_name=c.table_name
and b.owner=d.owner
and b.table_name=d.table_name
页: [1]
查看完整版本: user_constraints知道查找外键的表