TRY~CATCH 문에서 ERROR를 발생시킨 객체를 알 수 있는 방법은?
----------------------------------------------------------------
BEGIN TRY ~ END TRY 문에서 ERROR를 발생한 객체의 종류,
예를 들면 에러를 발생시킨 테이블 이름에 따라
BEGING CATCH ~ END CATCH 문에서 에러 처리를 달리 하고자 하는데요...
아래 코드 처럼 말이죠.
어떻게 하면 될까요?
-------------------------------------------------------------
BEGIN TRY
UPDATE tblAAA SET = @QCT_NO WHERE REQ_NUM=@REQ_NUM;
UPDATE tblBBB SET IF_RSLT_CODE = 'OK' WHERE IF_ID=@IF_ID;
END TRY
BEGIN CATCH
IF( ??????)
BEGIN
-- tblAAA 에서 에러가 발생한 경우
ROLLBACK TRAN;
UPDATE tblAAA SET ERRORMSG = 'AAAAAA' WHERE IF_ID=@IF_ID;
RETURN;
END;
ELSE
BEGIN
-- tblBBB 에서 에러가 발생한 경우
ROLLBACK TRAN;
RETURN;
END;
END CATCH
|