SQL リファレンス

SQL Server を中心に、SQL に関するテクニックを紹介します

SQL リファレンス

SQL Server を中心に、SQL に関するテクニックを紹介します

SQL Server において、プロシージャの従属関係は、[sysdepends]というシステムテーブルが保持しています。
例えば、プロシージャAがプロシージャBに従属している場合、[sysdepends]におけるプロシージャBのレコードのdepidには、プロシージャAのオブジェクトID(sysobjects.id)が登録されています。

SELECT DISTINCT
op.id AS [ParentObjectID],
op.name AS [ParentObjectName],
oc.id AS [ChildObjectID],
oc.name AS [ChildObjectName],
oc.type AS [ChildObjectType]
FROM
sysdepends AS d
INNER JOIN sysobjects AS op
ON d.id = op.id
INNER JOIN sysobjects AS oc
ON d.depid = oc.id
WHERE
d.id = [従属関係を表示したいオブジェクトのID]
ORDER BY
op.name,
oc.name

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です