在Oracle中,有没有查看一个表外键的SQL语句?
我想通过这个SQL语句查询一个表的主外键比如:有表“AC”其中主键为“JH”有表“AD”其中也有一个列名为“JH”的则主键表是AC,外键表是AD主键是AC的JH,外键是A...
我想通过这个SQL语句查询一个表的主外键
比如:
有表 “AC” 其中主键为“JH”
有表“AD”其中也有一个列名为“JH”的
则主键表是AC,外键表是AD 主键是AC的JH,外键是AD的JH
想要的结果是:主键表名,外键表名,主键,外键
如果答对了,我会多多加分的。先谢谢了。
SELECT * FROM user_constraints
不行,只能查到外键什么的,少。 展开
比如:
有表 “AC” 其中主键为“JH”
有表“AD”其中也有一个列名为“JH”的
则主键表是AC,外键表是AD 主键是AC的JH,外键是AD的JH
想要的结果是:主键表名,外键表名,主键,外键
如果答对了,我会多多加分的。先谢谢了。
SELECT * FROM user_constraints
不行,只能查到外键什么的,少。 展开
4个回答
展开全部
已验证:
select INDEX_NAME 索引名, b.TABLE_NAME 主键表名, a.TABLE_NAME 外键表名, CONSTRAINT_TYPE, CONSTRAINT_NAME 约束名
from all_indexes a, all_constraints b
where b.TABLE_NAME='AC' AND CONSTRAINT_TYPE IN('P','R')
and R_CONSTRAINT_NAME=INDEX_NAME(+)
/
CONSTRAINT_TYPE='P'为主键,='R'为外键
select INDEX_NAME 索引名, b.TABLE_NAME 主键表名, a.TABLE_NAME 外键表名, CONSTRAINT_TYPE, CONSTRAINT_NAME 约束名
from all_indexes a, all_constraints b
where b.TABLE_NAME='AC' AND CONSTRAINT_TYPE IN('P','R')
and R_CONSTRAINT_NAME=INDEX_NAME(+)
/
CONSTRAINT_TYPE='P'为主键,='R'为外键
展开全部
select * from user_constraints where
R_CONSTRAINT_NAME in (select constraint_name from user_constraints where table_name = 'DEPT') ;
查看所有 reference DEPT表的外键
R_CONSTRAINT_NAME in (select constraint_name from user_constraints where table_name = 'DEPT') ;
查看所有 reference DEPT表的外键
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有表 “AC” 其中主键为“JH”
有表“AD”其中也有一个列名为“JH”的
则主键表是AC,外键表是AD 主键是AC的JH,外键是AD的JH
想要的结果是:主键表名,外键表名,主键,外键
有表“AD”其中也有一个列名为“JH”的
则主键表是AC,外键表是AD 主键是AC的JH,外键是AD的JH
想要的结果是:主键表名,外键表名,主键,外键
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
难道不能用 SELECT * FROM user_constraints ...?
R_CONSTRAINT_NAME 这个东西就是外键参照的另一个约束条件 ...
R_CONSTRAINT_NAME 这个东西就是外键参照的另一个约束条件 ...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询