如何在oracle中找到外部约束键的父表?

时间:2016-10-27 20:52:16

标签: database oracle foreign-keys foreign-key-relationship

如何在oracle中的表键上找到外部约束的父表?我需要创建一个可以为此列选择的所有值的下拉列表,我正在查看并需要知道父级,以便我可以查找其兄弟值。

2 个答案:

答案 0 :(得分:2)

您可以从all_constraints(或user_constraintsdba_constraints)查询此信息。不幸的是,您只能检索外键引用的约束的名称,因此您必须使用子查询或self join来检索引用表:

SELECT r.table_name
FROM   user_constraints t
JOIN   user_constraints r ON t.r_constraint_name = r.constraint_name
WHERE  t.constraint_type = 'R' AND t.table_name = 'SOME_TABLE'

答案 1 :(得分:0)

您可以使用以下查询获取父表。

select * from all_constraints
where constraint_name in (select r_constraint_name from all_constraints
where table_name in 'TAB_NAME');