sp_depends (Transact-SQL)
顯示有關資料庫物件相依性的資訊,例如相依於資料表或檢視的檢視和程序,以及檢視或程序所相依的資料表或檢視。不會報告對於目前資料庫外之物件的參考。
![]() |
---|
未來的 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 會顯示兩個結果集。
下列結果集會顯示 <object> 所相依的物件。
資料行名稱 |
資料類型 |
描述 |
---|---|---|
name |
nvarchar(257) |
相依性存在的項目名稱。 |
type |
nvarchar(16) |
項目的類型。 |
updated |
nvarchar(7) |
是否更新項目。 |
selected |
nvarchar(8) |
是否在 SELECT 陳述式中使用這個項目。 |
column |
sysname |
存在相依性的資料行或參數。 |
下列結果集會顯示相依於 <object> 的物件。
資料行名稱 |
資料類型 |
描述 |
---|---|---|
name |
nvarchar(257) |
相依性存在的項目名稱。 |
type |
nvarchar(16) |
項目的類型。 |
權限
需要 public 角色中的成員資格。
範例
A. 列出對於資料表的相依性
下列範例會列出相依於 AdventureWorks 資料庫中 Sales.Customer 資料表的資料庫物件。指定了結構描述名稱和資料表名稱。
USE AdventureWorks
GO
EXEC sp_depends @objname = N'Sales.Customer' ;
B. 列出對於觸發程序的相依性
下列範例列出 iWorkOrder 觸發程序相依的資料庫物件。
EXEC sp_depends @objname = N'AdventureWorks.Production.iWorkOrder' ;