oracle 查询参照关系,oracle查询某个表的参照关系

今天开发人员询问我怎么看某个表参照了其它哪些表,或者某个表被其它哪些表参照,最好能用图表(ER图)的方式展现,开始想通过TOAD或其它工具打开,但打开后导成图片,因为表太大,报错说资源不足,后来想通过数据字典来查,折腾好久,才写出来参照关系:

主要用到2张数据字典:user_constraints和user_cons_columns

sql如下,2个地方的表名“EMP”同时变换为需要查看的表,就可以查出和这个表“EMP”相关的参照关系:

select a.table_name,a.COLUMN_NAME,c.table_name,c.column_name from

user_cons_columns a, user_constraints b, user_cons_columns c

where a.constraint_name=B.CONSTRAINT_NAME

and b.r_constraint_name=c.constraint_name

and (c.table_name='EMP' or a.table_name ='EMP');

得出的结果为:前2列参照后2列。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值