sql - 如何发现表的外键链接到哪个表\字段?

标签 sql sql-server rdbms database

我是 Microsoft SQL server 的新手,对数据库了解不多。

我有以下疑问:

在我的数据库中,我有一个名为CPE的表

此表有一个名为 SourceId 的字段(一列),它是我表的 FOREIGN KEY

所以我认为这个字段必须包含在另一个表的某个字段中定义的值,因为它将 2 个表绑定(bind)在一起。

我需要做什么才能发现另一个字段和链接到的另一个表是什么?

谢谢

安德里亚

最佳答案

你肯定在找:

sp_help [table_name]

或试试这个查询:

select t.name as ForeignKeytable, fk.constraint_column_id as ForeignKey_No, c.name as ForeignKeyColumn 
from sys.foreign_key_columns as fk
inner join sys.tables as t on fk.parent_object_id = t.object_id
inner join sys.columns as c on fk.parent_object_id = c.object_id and fk.parent_column_id = c.column_id
where fk.referenced_object_id = (select object_id from sys.tables where name = 'name')
order by ForeignKeytable, ForeignKey_No

关于sql - 如何发现表的外键链接到哪个表\字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22196429/

相关文章:

sql - 我在此SQL请求中的语法错误在哪里?

php - 性能 : SQL Queries vs Server-Side PHP Loops (MYSQL vs PHP)

sql-server - Entity Framework ,查看而不是插入触发器。无法在 View 中插入一行

mysql - 关系数据库中自定义字段的设计模式

database - Temenos T24 数据库结构

mysql - 由于外键约束,无法删除现有的唯一键

php - sql 查询中的输入变量

java - mssql-jdbc-6.3.4.jre8-preview.jar 没有 sqljdbc_auth.dll

database - 何时从电子表格切换到 RDBMS?

database - 有没有办法在 E-R 图中表示元组与表之间的关系?