Target Table:
TargetTable (ID, Code, Number, Description, Type)
Target Table Type:
TargetTableType (ID, Code, Number, Description, Type, DMLType)
DMLType would include indicators for Insert/Update/Delete.
Stored Procedure:
CREATE PROCEDURE [dbo].[UpdateTargetTable](@TargetTableType AS [dbo].[TargetTableType] READONLY)
AS
BEGIN
DECLARE @Status VARCHAR(50), @Summary VARCHAR(MAX)
BEGIN TRY
BEGIN TRANSACTION
-- PERFORM YOUR OPERATION HERE
SET @Summary = 'SUCCESS'
COMMIT TRANSACTION
END TRY
BEGIN CATCH
SET @Status = 'FAILURE'
SET @Summary = ERROR_MESSAGE()
ROLLBACK TRANSACTION
END CATCH
SELECT @Status
SELECT @Summary
END
Execute the Stored Procedure:
DECLARE @TargetTableType AS [dbo].[TargetTableType]
EXECUTE [dbo].[UpdateTargetTable] @TargetTableType