在SQL Server数据库中查找所有外键

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SQL Server数据库中查找所有外键相关的知识,希望对你有一定的参考价值。

  1. SELECT
  2. K_Table = FK.TABLE_NAME,
  3. FK_Column = CU.COLUMN_NAME,
  4. PK_Table = PK.TABLE_NAME,
  5. PK_Column = PT.COLUMN_NAME,
  6. Constraint_Name = C.CONSTRAINT_NAME
  7. FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS C
  8. INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS FK ON C.CONSTRAINT_NAME = FK.CONSTRAINT_NAME
  9. INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS PK ON C.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
  10. INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE CU ON C.CONSTRAINT_NAME = CU.CONSTRAINT_NAME
  11. INNER JOIN (
  12. SELECT i1.TABLE_NAME, i2.COLUMN_NAME
  13. FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS i1
  14. INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE i2 ON i1.CONSTRAINT_NAME = i2.CONSTRAINT_NAME
  15. WHERE i1.CONSTRAINT_TYPE = 'PRIMARY KEY'
  16. ) PT ON PT.TABLE_NAME = PK.TABLE_NAME

以上是关于在SQL Server数据库中查找所有外键的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server查找一个外键被引用的所有表

SQL SERVER–2005–在数据库中查找具有外键约束的表

如何在 SQL Server 中列出所有带有“WITH NOCHECK”的外键

Sql server - 动态更改所有外键约束Update_Rule

从未知数据库 SQL 和 Java 中查找外键

sql 查询所有外键SQL Server