查找数据库中主外键关系表

sys@ORCL> desc dba_constraints
 Name                                                  Null?    Type
 ----------------------------------------------------- -------- ------------------------------------
 OWNER                                                          VARCHAR2(30)
 CONSTRAINT_NAME                                       NOT NULL VARCHAR2(30)
 CONSTRAINT_TYPE                                                VARCHAR2(1)
 TABLE_NAME                                            NOT NULL VARCHAR2(30)
 SEARCH_CONDITION                                               LONG
 R_OWNER                                                        VARCHAR2(30)
 R_CONSTRAINT_NAME                                              VARCHAR2(30)
 DELETE_RULE                                                    VARCHAR2(9)
 STATUS                                                         VARCHAR2(8)
 DEFERRABLE                                                     VARCHAR2(14)
 DEFERRED                                                       VARCHAR2(9)
 VALIDATED                                                      VARCHAR2(13)
 GENERATED                                                      VARCHAR2(14)
 BAD                                                            VARCHAR2(3)
 RELY                                                           VARCHAR2(4)
 LAST_CHANGE                                                    DATE
 INDEX_OWNER                                                    VARCHAR2(30)
 INDEX_NAME                                                     VARCHAR2(30)
 INVALID                                                        VARCHAR2(7)
 VIEW_RELATED                                                   VARCHAR2(14)


描述约束的详细情况

 

sys@ORCL> desc dba_cons_columns
 Name                                                  Null?    Type
 ----------------------------------------------------- -------- ------------------------------------
 OWNER                                                 NOT NULL VARCHAR2(30)
 CONSTRAINT_NAME                                       NOT NULL VARCHAR2(30)
 TABLE_NAME                                            NOT NULL VARCHAR2(30)
 COLUMN_NAME                                                    VARCHAR2(4000)
 POSITION                                                       NUMBER


 

描述哪些列上有哪些约束。

select con1.table_name "外键表",
       c1.column_name  "外键列",
       con2.table_name "主键表",
       c2.column_name  "主键列",
       con1.r_constraint_name,
       con2.constraint_name       
  from dba_constraints  con1,
       dba_constraints  con2,
       dba_cons_columns c1,
       dba_cons_columns c2
 where con1.owner = 'HR'
   and con1.constraint_type = 'R'
   and con1.constraint_name = c1.constraint_name
   and con1.r_constraint_name = con2.constraint_name
   and con2.constraint_name = c2.constraint_name;



找出主外键表关系。

 

select distinct con1.table_name "外键表", 
       c1.column_name  "外键列", 
       con2.table_name "主键表", 
       c2.column_name  "主键列", 
       con1.r_constraint_name, 
       con2.constraint_name        
  from dba_constraints  con1, 
       dba_constraints  con2, 
       dba_cons_columns c1, 
       dba_cons_columns c2 
 where con1.owner = 'NBPM' 
   and ( con1.table_name in ('BPM_USER','BPM_USER_ROLEGROUP') OR con2.table_name in ('BPM_USER','BPM_USER_ROLEGROUP'))
   and con1.constraint_type = 'R' 
   and con1.constraint_name = c1.constraint_name 
   and con1.r_constraint_name = con2.constraint_name 
   and con2.constraint_name = c2.constraint_name;

 

已知这两个对象分别处于产生死锁的两个语句中,找出他们的主外键关系。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huangliang0703

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值