zaagan
8/3/2019 - 6:26 PM

MS SQL Try Catch

MS SQL Try Catch

BEGIN TRY;
  SET NOCOUNT ON; 
  SELECT 'Some sql statement ...';
  RAISERROR('Raise a custom error', 16, 1) ;
  Select 'This code wont execute';
END TRY 

BEGIN CATCH 
  SELECT 
    ERROR_MESSAGE() AS [Message],
    ERROR_PROCEDURE() AS [Procedure],
    ERROR_LINE() AS Line,
    ERROR_NUMBER() AS Number,
    ERROR_SEVERITY() AS Severity,
    ERROR_STATE() AS State;
END CATCH;
SELECT 'The end';


-- Traditional error handling 
DECLARE @ErrorCode INT;

PRINT 'Some error prone sql statement.'
SET @ErrorCode= @@ERROR;

IF @ErrorCode <> 0
BEGIN
  -- ERROR HANDLING CODE GOES HERE
	PRINT @ErrorCode
END