IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_SettingsInsert]') AND type in (N'P', N'PC')) DROP PROCEDURE [dbo].[sp_SettingsInsert] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_SettingsInsert]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_SettingsInsert] AS' END GO ALTER PROCEDURE [dbo].[sp_SettingsInsert] @PropertyId nvarchar(255) ,@PropertyType int ,@PropertyValue nvarchar(255) ,@UserId nvarchar(255) = null ,@new_id int output ,@errorNumber int output ,@errorMessage nvarchar(250) output AS BEGIN set @errorNumber = 0 set @errorMessage = space(0) if(@UserId is null) begin RAISERROR(15600,-1,-1, '[sp_SettingsInsert]') /* Error 1560 - An invalid parameter or option was specified for procedure*/ end else begin INSERT INTO [dbo].[Settings] ([PropertyId] ,[PropertyType] ,[PropertyValue] ,[UserId]) VALUES (@PropertyId ,@PropertyType ,@PropertyValue ,@UserId) set @new_id = scope_identity(); end END GO