我想在我的数据库中找到所有具有指向特定引用表的外键的引用表。是否有我可以运行的查询来执行此操作?
不确定这个问题是否令人困惑。如果是,请告诉我,我可以尝试更详细地解释它。
最佳答案
以下查询或修改 tehreof 将执行 - 在 Sql server 中 您还可以提供目录和模式信息
select tab1.TABLE_NAME from
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS as ref inner join
INFORMATION_SCHEMA.TABLE_CONSTRAINTS as prim
on ref.UNIQUE_CONSTRAINT_NAME=prim.CONSTRAINT_NAME
and ref.UNIQUE_CONSTRAINT_CATALOG=prim.CONSTRAINT_CATALOG
and ref.UNIQUE_CONSTRAINT_SCHEMA=prim.CONSTRAINT_SCHEMA
--and prim.CONSTRAINT_TYPE in('PRIMARY KEY','UNIQUE')
inner join INFORMATION_SCHEMA.TABLE_CONSTRAINTS tab1 on
ref.CONSTRAINT_NAME=tab1.CONSTRAINT_NAME
and ref.CONSTRAINT_CATALOG=tab1.CONSTRAINT_CATALOG
and ref.CONSTRAINT_SCHEMA=tab1.CONSTRAINT_SCHEMA
where prim.TABLE_NAME='YourTablename'
关于sql-server - 如何找到所有外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3088904/