sp_depends (Transact-SQL)
适用于:SQL Server
显示有关数据库对象依赖关系的信息,例如,依赖于表或视图的视图和过程,以及视图或过程所依赖的表和视图。 不报告对当前数据库以外对象的引用。
重要
后续版本的 Microsoft SQL Server 将删除该功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 请改用 sys.dm_sql_referencing_entities 和 sys.dm_sql_referenced_entities 。
语法
sp_depends [ @objname = ] '<object>'
<object> ::=
{
[ database_name. [ schema_name ] . | schema_name.
object_name
}
参数
database_name
数据库的名称。
schema_name
对象所属架构的名称。
object_name
要检查其依赖关系的数据库对象。 该对象可以是表、视图、存储过程、用户定义函数或触发器。 object_name 为 nvarchar (776) ,没有默认值。
返回代码值
0(成功)或 1(失败)
结果集
sp_depends 显示两个结果集。
以下结果集显示对象所依赖 <的对象> 。
列名称 | 数据类型 | 说明 |
---|---|---|
name | nvarchar (257) | 存在依赖项的项名称。 |
type | nvarchar(16) | 项的类型。 |
更新 | nvarchar (7) | 是否更新项。 |
选定 | nvarchar(8) | 项是否用于 SELECT 语句。 |
column | sysname | 存在依赖项的列或参数。 |
以下结果集显示依赖于 <对象的 对象>。
列名称 | 数据类型 | 说明 |
---|---|---|
name | nvarchar (257) | 存在依赖项的项名称。 |
type | nvarchar(16) | 项的类型。 |
权限
要求 公共 角色具有成员身份。
示例
A. 列出表的依赖关系
以下示例列出在 AdventureWorks2022
数据库中依赖于 Sales.Customer
表的数据库对象。 同时指定了架构名和表名。
USE AdventureWorks2022;
GO
EXEC sp_depends @objname = N'Sales.Customer' ;
B. 列出触发器的依赖关系
以下示例列出 iWorkOrder
触发器所依赖的数据库对象。
EXEC sp_depends @objname = N'AdventureWorks2022.Production.iWorkOrder' ;
另请参阅
数据库引擎存储过程 (Transact-SQL)
EXECUTE (Transact-SQL)
sp_help (Transact-SQL)
系统存储过程 (Transact-SQL)
sys.sql_dependencies (Transact-SQL)