1

3195 のストアド プロシージャを含む SQL Server データベースがあります。ストアド プロシージャのほとんど (約 90%) は暗号化されています (これはサード パーティのアプリです) が、暗号化されていないものも多数あります (後でコンサルタントによって追加されました)。

コンサルタントが作成した暗号化されていないストアド プロシージャの概要を把握し、UTC 時間で作業できるように修正を適用する必要があります。

Generate Scriptsストアド プロシージャのみを使用して選択しましたが、失敗します。これは、最初に書き出そうとするストアド プロシージャが暗号化されているためだと思います。暗号化されていない約 300 のストアド プロシージャを書き出す方法はありますか?

4

3 に答える 3

2

編集:どうですか:

SELECT
    sp.NAME,
    ISNULL(smsp.definition, ssmsp.definition) AS [Definition]
FROM
    sys.all_objects AS sp
    LEFT OUTER JOIN sys.sql_modules AS smsp ON smsp.object_id = sp.object_id
    LEFT OUTER JOIN sys.system_sql_modules AS ssmsp ON ssmsp.object_id = sp.object_id
WHERE
    sp.type = 'P'
    AND SCHEMA_NAME(sp.schema_id)='dbo'
    AND ISNULL(smsp.definition, ssmsp.definition) IS NOT NULL

暗号化されたストアド プロシージャには、NULL 定義があります。

于 2013-10-30T09:57:53.507 に答える
0

この復号化ストアド プロシージャを試してください

スクリプトを取得してから、このストアド プロシージャの暗号化のようにストアド プロシージャを再度暗号化します。

于 2013-10-30T09:58:38.330 に答える