흔히 알고 있는 VB나 JS 에서와 같이 MS-SQL 에서도 TRY CATCH !
BEGIN TRY SELECT 1/0; END TRY BEGIN CATCH SELECT '여기서 에러 발생 ' ,ERROR_NUMBER() AS ErrorNumber ,ERROR_SEVERITY() AS ErrorSeverity ,ERROR_STATE() AS ErrorState ,ERROR_PROCEDURE() AS ErrorProcedure ,ERROR_LINE() AS ErrorLine ,ERROR_MESSAGE() AS ErrorMessage; END CATCH;
* 사용가능한 시스템 함수
•ERROR_NUMBER()는 오류 번호를 반환합니다.
•ERROR_SEVERITY()는 심각도를 반환합니다.
•ERROR_STATE()는 오류 상태 번호를 반환합니다.
•ERROR_PROCEDURE()는 오류가 발생한 저장 프로시저 또는 트리거의 이름을 반환합니다.
•ERROR_LINE()은 오류를 발생시킨 루틴 내의 줄 번호를 반환합니다.
•ERROR_MESSAGE()는 오류 메시지의 전체 텍스트를 반환합니다.
•ERROR_SEVERITY()는 심각도를 반환합니다.
•ERROR_STATE()는 오류 상태 번호를 반환합니다.
•ERROR_PROCEDURE()는 오류가 발생한 저장 프로시저 또는 트리거의 이름을 반환합니다.
•ERROR_LINE()은 오류를 발생시킨 루틴 내의 줄 번호를 반환합니다.
•ERROR_MESSAGE()는 오류 메시지의 전체 텍스트를 반환합니다.