Use BEGIN TRY in SQL stored procedures to catch errors and save them
1. Create a data table that saves errors:
/ * create error log table * / CREATE TABLE ErrorLog (errNum INT, ErrSev NVARCHAR (500), ErrState INT, ErrProc NVARCHAR (1000) ErrLine INT, ErrMsg NVARCHAR (2000))
2. Create a stored procedure to save the error message:
/ * create error logging stored procedures * / CREATE PROCEDURE InsErrorLogAS BEGIN INSERT INTO ErrorLog SELECT ERROR_NUMBER () AS ErrNum, ERROR_SEVERITY () AS ErrSev, ERROR_STATE () AS ErrState, ERROR_PROCEDURE () AS ErrProc, ERROR_LINE () AS ErrLine ERROR_MESSAGE () AS ErrMsg END
3. Use BEGIN TRY in the stored procedure and save it by catching errors:
CREATE PROCEDURE GetErrorTestASBEGIN TRY / * fill in the contents of the stored procedure here * / * END TRYBEGIN CATCH EXEC InsErrorLog-- call the InsErrorLog stored procedure to save the error log END CATCH