sql-server - 如何找到所有外键?

标签 sql-server sql-server-2005 foreign-keys foreign-key-relationship

我想在我的数据库中找到所有具有指向特定引用表的外键的引用表。是否有我可以运行的查询来执行此操作?

不确定这个问题是否令人困惑。如果是,请告诉我,我可以尝试更详细地解释它。

最佳答案

以下查询或修改 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/

相关文章:

sql-server - SQL Server columnstore 索引更新/插入存储过程

sql-server - SQL 过程和 CLR 过程之间的区别?

java - Spring Boot JPA向MySQL插入实体/对象时如何自动插入外键

sql-server - Azure 逻辑应用 - 确定触发 SQL Server "When item is modified"条件的原因

sql-server - 如何判断变量 (-v) 是否在命令行 (SQLCMD) 上定义

sql-server - SQL Server 2005 对使用 "RECOVERY"还原的数据库执行 "NORECOVERY"

sql - 随机选择并不总是返回单行

sql - 如何在 SQL Server 2005 中插入没有可写列的表?

mysql - 外键:简单查询不起作用

MySQL : Automatic column update with list of value