Simple Stored Procedure Template

PRINT '----------- #SP_NAME# ----------'
GO

IF Object_Id(N'#SP_NAME#', N'P') IS NOT NULL
BEGIN
PRINT   '  RECREATING PROCEDURE #SP_NAME#'
DROP PROCEDURE [#SP_NAME#]
END
ELSE
BEGIN
PRINT   '  CREATING PROCEDURE #SP_NAME#'
END
GO

CREATE PROCEDURE [#SP_NAME#]
-- ADD PARAMETERS HERE
AS
BEGIN
/****** Object:  Stored Procedure #SP_NAME# ******/
-- Script Date:
-- Org: 
-- Author:
--
-- Description:
--
-- Parameters
--  INPUT:
-- OUTPUT:
--
-- Return Values:
--
/***************************************************/

-- DECLARATIONS

-- OBJECT CREATION

-- BODY

-- RETVALS

/* OPTIONAL ERROR HANDLING BLOCK
GOTO OBJECT_DESTRUCTOR
RETURN 0

-- ERROR HANDLING

ERRHAND:
GOTO OBJECT_DESTRUCTOR
RETURN 1

OBJECT_DESTRUCTOR:
-- OBJECT DESTROYERS
*/
END
GO

IF Object_Id(N'#SP_NAME#', N'P') IS NOT NULL
BEGIN
PRINT   '  GRANTING EXECUTE:'
GRANT   EXECUTE ON [#SP_NAME#] TO [PUBLIC]
PRINT   '    TO PUBLIC'
GRANT   EXECUTE ON [#SP_NAME#] TO [IMIS]
PRINT   '    TO IMIS'
GRANT   EXECUTE ON [#SP_NAME#] TO [ASIGOPHER]
PRINT   '    TO ASIGOPHER'
END
ELSE
BEGIN
PRINT   '  * FAILED CREATING PROCEDURE #SP_NAME#'
END
GO