クライアントが「データベース管理」機能を実行するたびに実行する必要があるSQLスクリプトがあります。スクリプトには、クライアントデータベースでのストアドプロシージャの作成が含まれます。これらのクライアントの一部は、スクリプトの実行時にストアドプロシージャを既に持っている場合もあれば、持っていない場合もあります。不足しているストアドプロシージャをクライアントデータベースに追加する必要がありますが、T-SQL構文をどれだけ曲げようとしてもかまいません。
CREATE / ALTER PROCEDURE 'はクエリバッチの最初のステートメントである必要があります
私は作品を作る前にその落ち込みを読みましたが、私はそのようにするのが好きではありません。
IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'MyProc')
DROP PROCEDURE MyProc
GO
CREATE PROCEDURE MyProc
...
ストアドプロシージャの存在チェックを追加し、存在しない場合は作成し、存在する場合は変更するにはどうすればよいですか?