Oracle外键查询

Oracle外键查询

有时候我们维护数据库需要知道某个表的字段被哪些表的外键关联了,可以用下面的sql语句进行查询:

sql 复制代码
SELECT
    uc.table_name AS "引用表名",
    uc.constraint_name AS "外键约束名",
    ucc.column_name AS "外键字段"
FROM
    user_constraints uc
JOIN
    user_cons_columns ucc
    ON uc.constraint_name = ucc.constraint_name
WHERE
    uc.constraint_type = 'R'
    AND uc.r_constraint_name IN (
        SELECT constraint_name
        FROM user_constraints
        WHERE table_name = 'SM_USER'
        AND constraint_type IN ('P', 'U')  -- 主键或唯一约束
    )
ORDER BY
    uc.table_name;

还有可能需要查询外键在哪个表:

sql 复制代码
SELECT table_name
FROM all_constraints
WHERE constraint_name = '外键名称'
AND constraint_type = 'R';
相关推荐
北风toto16 分钟前
本体和智能体协同核心5步骤(生成sql语句)
数据库·sql
IvorySQL17 分钟前
PostgreSQL 技术日报 (6月10日)|多工具版本更新,PG19 图语法落地
数据库·postgresql
lsyeei22 分钟前
数据库分库分表
数据库
这个DBA有点耶25 分钟前
Vibe Coding 是什么?当“感觉编程”遇上数据库
数据库·人工智能·架构·学习方法·ai编程·程序员创富·改行学it
数智化精益手记局36 分钟前
拆解项目管理平台核心功能:看项目管理平台如何解决跨部门协作难题与多项目并行场景
大数据·运维·数据库·人工智能·产品运营
德迅云安全-小潘1 小时前
网站遭遇SQL注入攻击?应急处置、漏洞修复与长效防御完整方案
网络·sql·oracle
da-peng-song1 小时前
ArcGIS Desktop使用入门(三)图层右键工具——定义查询
数据库·arcgis·拆分数据·定义查询
热爱正能量1 小时前
数据库死锁排查思路
数据库
swordbob2 小时前
MySQL和Oracle关于读未提交的区别
数据库·mysql·oracle
林九生2 小时前
【实用技巧】MySQL 绿色版一键路径更新脚本详解 —— update_path.bat 深度解析
android·数据库·mysql