次の方法で共有


sp_depends (Transact-SQL)

適用対象: SQL Server

テーブルまたはビューに依存するビューやプロシージャ、ビューまたはプロシージャによって依存されるテーブルとビューなど、データベース オブジェクトの依存関係に関する情報を表示します。 現在のデータベースの外部にあるオブジェクトへの参照は報告されません。

重要

この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに sys.dm_sql_referencing_entitiessys.dm_sql_referenced_entities を使用してください。

Transact-SQL 構文表記規則

構文

sp_depends [ @objname = ] N'objname'

<objname> ::=
{
    [ database_name. [ schema_name ] . | schema_name. ]
    object_name
}

[ ; ]

引数

[ @objname = ] N'objname'

@objnamenvarchar(776)で、既定値はありません。

  • database_name

    データベースの名前。

  • schema_name

    オブジェクトが属するスキーマの名前。

  • object_name

    依存関係を調べるデータベース オブジェクト。 オブジェクトには、テーブル、ビュー、ストアド プロシージャ、ユーザー定義関数、またはトリガーを指定できます。 object_namenvarchar(776)で、既定値はありません。

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

sp_depends には、2 つの結果セットが表示されます。

次の結果セットは、 @objname が依存するオブジェクトを示しています。

列名 データ型 説明
name nvarchar(257) 依存関係が存在する項目の名前。
type nvarchar(16) 項目の種類。
updated nvarchar(7) アイテムを更新するかどうかを指定します。
selected nvarchar(8) SELECT ステートメントで項目を使用するかどうかを指定します。
column sysname 従属性が存在する列またはパラメーター。

次の結果セットは、 @objnameに依存するオブジェクトを示しています。

列名 データ型 説明
name nvarchar(257) 依存関係が存在する項目の名前。
type nvarchar(16) 項目の種類。

アクセス許可

ロール public のメンバーシップが必要です。

A. テーブルに対する依存関係を一覧表示する

次の例では、AdventureWorks2022 データベースのSales.Customer テーブルに依存するデータベース オブジェクトの一覧を示します。 ここではスキーマ名とテーブル名の両方を指定します。

USE AdventureWorks2022;
GO
EXEC sp_depends @objname = N'Sales.Customer';

B. トリガーに対する依存関係を一覧表示する

次の例では、トリガー iWorkOrder 依存するデータベース オブジェクトの一覧を示します。

EXEC sp_depends @objname = N'AdventureWorks2022.Production.iWorkOrder';