SQL Server 2005 データベースでストアド プロシージャが呼び出されている場所を見つける方法はありますか?
Find を使用してみましたが、Visual Studio のようには機能しません。
前もって感謝します。
SQL Server 2005 データベースでストアド プロシージャが呼び出されている場所を見つける方法はありますか?
Find を使用してみましたが、Visual Studio のようには機能しません。
前もって感謝します。
データベース オブジェクト (テーブル、列、トリガーなど) を名前で検索する必要がある場合は、これを行うSQL 検索と呼ばれる無料のRed-Gate ツールを参照してください。データベース全体であらゆる種類の文字列を検索します。
したがって、あなたの場合、関心のあるストアド プロシージャの名前がわかっている場合は、それを検索ボックスにキー入力するだけで、SQL Search によってそのストアド プロシージャが呼び出されているすべての場所がすばやく表示されます。
これは、DBA やデータベース開発者にとって欠かすことのできない優れたツールです。
'検索'SPを作成できます
これを使用して、データベースオブジェクト内のテキストを検索します。
CREATE sp_grep (@object varchar(255))
as
SELECT distinct
'type' = case type
when 'FN' then 'Scalar function'
when 'IF' then 'Inlined table-function'
when 'P' then 'Stored procedure'
when 'TF' then 'Table function'
when 'TR' then 'Trigger'
when 'V' then 'View'
end,
o.[name],
watchword = @object
FROM dbo.sysobjects o (NOLOCK)
JOIN dbo.syscomments c (NOLOCK)
ON o.id = c.id
where c.text like '%'+@object+'%'
View Dependencies
SQL Server Management Studio でを試すことができます。
ストアド プロシージャを右クリックし、[ ] を選択しますView Dependencies
。ただし、必ずしも 100% 正確であるとは限りません。
select *
from sys.dm_sql_referencing_entities('[SchemaName].[SPName]', 'OBJECT');