プロシージャ・スクリプトの先頭に追加できます。 (ただ実際の値にownernameにし、PROCNAMEを交換してください。
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[OwnerName].[ProcName]') AND type in (N'P', N'PC'))
DROP PROCEDURE [OwnerName].[ProcName]
GO
また、あなたがALTER PROC
を書くことができますが、スクリプトは、後でそのかもしれないデータベースに展開するよう、あなたの仕事を保存している場合、これは問題になることがありあなたは常にSQLサーバーは、既存のプロシージャを右クリックしてあなたのためにこれを生成します。また、テンプレートエクスプローラはCtrl + Alt + Tを使用することができますScript Stored Procedure as -> DROP and CREATE to -> ...
を選択して持つことができ余談手順
を持っていませんドロップストアを使用するその後、ED手順テンプレート(以下デフォルト)とは、あなたが既存のストアドプロシージャを変更しない代わりにCREATE
のQuery -> Specify Values for Template Parameters
-- =======================================================
-- Drop Stored Procedure
-- =======================================================
-- Drop stored procedure if it already exists
IF EXISTS (
SELECT *
FROM INFORMATION_SCHEMA.ROUTINES
WHERE SPECIFIC_SCHEMA = N'<Schema_Name, sysname, Schema_Name>'
AND SPECIFIC_NAME = N'<Procedure_Name, sysname, Procedure_Name>'
)
DROP PROCEDURE <Schema_Name, sysname, Schema_Name>.<Procedure_Name, sysname, Procedure_Name>
GO
ストアドプロシージャを記述するときに['ALTER PROCEDURE'](http://msdn.microsoft.com/en-us/library/ms189762.aspx)構文を使用してみませんか? – Justin