是否有查询以查看SQL Server表中的所有引用?

时间:2017-08-31 00:04:26

标签: sql-server

我想要一种简单的方法来查找我桌子上的所有外键。

例如有一个表Customers,我想找到与该表有关系的表,我用它来查找关系图,但它太慢了。

Desired result = Customers_Accounts, Customers_Cities, Customers_Properites, etc

2 个答案:

答案 0 :(得分:0)

是的只是选择您的表格并按 ALT + F1 ,在结果集的底部您会看到所有参考

答案 1 :(得分:0)

依赖关系缓慢的原因是由于sql sever运行的查询的数量和复杂性,以便向您显示一个很好的层次结构。

有一些方法可以获取所需的数据,具体取决于sql的版本以及您要查找的信息量。

取自Microsoft Docs - View the Dependencies of a Table

USE AdventureWorks2012;  
GO  
SELECT * FROM sys.sql_expression_dependencies  
WHERE referencing_id = OBJECT_ID(N'Production.vProductAndDescription');   
GO

显然,您需要将AdventureWorks2012更改为您的数据库,并Production.vProductAndDescription更改为您的客户架构和表名称。

以上适用于最新的sql server版本,对于旧版本,您可能需要参考以下链接:

MSSQL Tips - Different Ways to Find SQL Server Object Dependencies

MSSQL Tips - Listing SQL Server Object Dependencies