看到很多在群里问如何查找表的主键,外键,其实最主要是的要了解
user_constraints的结构。下面可以实现。
SQL> col 外键拥有者 format a10
SQL> col 外键表 format a10
SQL> col 主键拥有者 format a10
SQL> col 主键表 format a10
SQL> col 外键列 format a15
SQL> col 主键列 format a15
select
a.owner 外键拥有者,
a.table_name 外键表,
c.column_name 外键列,
b.owner 主键拥有者,
b.table_name 主键表,
d.column_name 主键列
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
/
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14864453/viewspace-416222/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14864453/viewspace-416222/
本文介绍了一种通过SQL查询来获取Oracle数据库中表的主键和外键信息的方法。利用user_constraints和其他相关视图,可以有效地列出指定表的所有主键及与其关联的外键信息。

1万+

被折叠的 条评论
为什么被折叠?



