SQL Server Management Studio 内のストアド プロシージャで "変更" または "script to" 関数を使用しようとすると、SP 内のすべての単一引用符が二重引用符に置き換えられます。私の同僚が変更またはスクリプトを使用するときはいつでも、単一引用符で囲まれた出力を受け取ります。二重引用符はクエリを分割します。SSMS 内の設定のようですが、そのような設定が見つかりません。
アドバイスをいただければ幸いです。
SQL Server Management Studio 内のストアド プロシージャで "変更" または "script to" 関数を使用しようとすると、SP 内のすべての単一引用符が二重引用符に置き換えられます。私の同僚が変更またはスクリプトを使用するときはいつでも、単一引用符で囲まれた出力を受け取ります。二重引用符はクエリを分割します。SSMS 内の設定のようですが、そのような設定が見つかりません。
アドバイスをいただければ幸いです。
このオプションが選択されているため、スクリプト オプションから動的 SQL を取得していると思います。
ツール > オプション > SQL Server オブジェクト エクスプローラー > スクリプト > オブジェクトの存在を確認する
この設定を有効にすると、スクリプトは次のように生成されます。
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = ...)
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE...'
END
right-click > Modify
このオプションを無効にすると、またはを使用するときに正しくなりますright-click > Script stored procedure as > ALTER to >
。