相关文章推荐
礼貌的消防车  ·  qt ...·  5 月前    · 
苦闷的生姜  ·  ECG R-wave peaks ...·  1 年前    · 
慷慨的黑框眼镜  ·  C\C++ ...·  1 年前    · 
老实的电池  ·  MonthCalendar的mousedow ...·  2 年前    · 

适用于: SQL Server 2016 (13.x) 及更高版本 Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)

可以使用 SQL Server Management Studio 或 Transact-SQL 查看 SQL Server 中的表依赖项。

本主题内容

  • 开始之前:

  • 使用以下工具查看表的依赖关系:

    SQL Server Management Studio

    Transact-SQL

    要求对数据库具有 VIEW DEFINITION 权限,并对数据库的 sys.sql_expression_dependencies 具有 SELECT 权限。 默认情况下,SELECT 权限仅授予 db_owner 固定数据库角色的成员。 将 SELECT 和 VIEW DEFINITION 权限授予其他用户时,被授权者可以查看数据库中的所有依赖关系。

    使用 SQL Server Management Studio

    查看表依赖的对象

  • “对象资源管理器” 中,展开 “数据库” ,再展开其中的某个数据库,然后展开 “表”

  • 右键单击某个表,然后单击“查看依赖关系”。

  • 在“对象依赖关系 <对象名称> ”对话框中,选择“依赖于 <对象名称> 的对象”或“ <对象名称> 依赖的对象”。

  • “依赖关系” 网格中选择一个对象。 对象类型(如“触发器”或“存储过程”)显示在“类型”框中。

    “使用 Transact-SQL”

    查看依赖于表的对象

  • “对象资源管理器” 中,连接到 数据库引擎的实例。

  • 在标准菜单栏上,单击 “新建查询”

  • 将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。

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