2

SQL Server データベースでテーブル/フィールドが使用されているすべての場所を知る必要があります。

私は、このテーブル/フィールドで何かを行うすべてのストアドプロシージャ、トリガー、関数などの後にいます。

「検索」オプションはこれを行うようには見えず、これを行う唯一の方法はクエリを書くことだとは信じられません...

4

3 に答える 3

6

私が知っているのはクエリだけです。私はこれを使用します:

SELECT DISTINCT
    o.name AS Object_Name,o.type_desc
    FROM sys.sql_modules        m 
        INNER JOIN sys.objects  o ON m.object_id=o.object_id
    WHERE m.definition Like '%WhateverIAmSearchingFor%'

おそらく、これを置き換えることができるより良いクエリを誰かが投稿するかどうかを知りたいと思います。私はそれを長い間持っていました。

于 2013-03-12T19:47:15.533 に答える
4

Red Gate の非常に古い無料のツールを使用しています。これは SQL 検索と呼ばれます。名前を指定するだけで、任意のデータベース オブジェクトを検索できます。そして素晴らしいのは、実際には SSMS アドインであるため、SSMS から使用できることです。SSMS 2012 でも使用しています。

PS私はRed Gateとは一切関係ありません

于 2013-03-12T20:22:14.730 に答える
2

ビュー、関数、トリガー、ストアド プロシージャなどを調べます。

SELECT DISTINCT SO.NAME
  FROM SYSOBJECTS SO INNER JOIN
       SYSCOMMENTS SC ON SC.ID = SO.ID
 WHERE SC.TEXT LIKE '%foo%'
于 2013-03-12T19:53:02.240 に答える