IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_TestEngineerDetailsUpdate]') AND type in (N'P', N'PC')) DROP PROCEDURE [dbo].[sp_TestEngineerDetailsUpdate] 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_TestEngineerDetailsUpdate]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_TestEngineerDetailsUpdate] AS' END GO ALTER PROCEDURE [dbo].[sp_TestEngineerDetailsUpdate] @Name nvarchar(255) ,@TestEngineerName nvarchar(255) ,@TestEngineerPhone nvarchar(255) ,@TestEngineerFax nvarchar(255) ,@TestEngineerEmail nvarchar(255) ,@LastModified datetime ,@LastModifiedBy nvarchar(50) ,@Version int ,@errorNumber int output ,@errorMessage nvarchar(250) output AS BEGIN set @errorNumber = 0; set @errorMessage = space(0); begin try declare @EngineerId int set @EngineerId = dbo.foo_IdGetEngineer(@Name) UPDATE [dbo].[TestEngineerDetails] SET [TestEngineerName] = @TestEngineerName ,[TestEngineerPhone] = @TestEngineerPhone ,[TestEngineerFax] = @TestEngineerFax ,[TestEngineerEmail] = @TestEngineerEmail ,[LastModified] = @LastModified ,[LastModifiedBy] = @LastModifiedBy ,[Version] = @Version WHERE [TestEngineerId] = @EngineerId end try begin catch set @errorMessage = error_message() set @errorNumber = error_number() end catch; END GO