0

列の長さを変更する必要があります。使用されているプロシージャと関数の名前を見つけました。自動で開いたり保存したりできます。300以上のオブジェクトがあります。手動で分析する必要がありますが、最初に開きたい

4

1 に答える 1

1

試してくださいsp_helptext 'func or proc name'- コードが返されます。

一度に複数の proc と関数が必要で、コード内の条件によってフィルター処理される場合は、次のスクリプトを使用します。

DECLARE @name VARCHAR(100)
DECLARE @getNames CURSOR

SET @getNames = CURSOR FOR 
    SELECT o.name 
    FROM sysobjects o 
    WHERE 
        type = 'P' AND 
        o.name IN (
            SELECT ROUTINE_NAME 
            FROM INFORMATION_SCHEMA.ROUTINES 
            WHERE ROUTINE_DEFINITION LIKE '%your condition here%'
        )

OPEN @getNames
    FETCH NEXT
    FROM @getNames INTO @name
    WHILE @@FETCH_STATUS = 0
    BEGIN
        EXEC sp_helptext @name
        FETCH NEXT
        FROM @getNames INTO @name
    END
    CLOSE @getNames
    DEALLOCATE @getNames
GO

これにより、すべてのプロシージャと関数のコードが得られます。これをファイルに保存したり、新しいウィンドウで開いたりすることができます。

Management Studio ではCtrl+T、クエリを実行する前にヒットする可能性があります。結果はプレーンテキストとして返されます。グリッド結果に戻るには、次を使用しますCtrl+D

于 2013-06-19T13:29:45.287 に答える