염치불구하고 문의 하나 드립니다...
exception 발생시 rollback 안되는 현상이 있는데
아래처럼 insert 후 anaylze 실행 후 exception 발생하면 rollback 인 안되고 commit 이 되어 버립니다.
insert 후 analyze 처리해도 rollback 할수 있는 방법이 있을까요??
에러내용 : ERR MSG: ORA-01422: 실제 인출은 요구된 것보다 많은 수의 행을 추출합니다
declare v_test varchar2(100); begin insert into t_test (a) values('aaa') ; execute immediate 'analyze table t_test compute statiscs'; select a into v_test from t_test; exception when others then RAISE_APPLICATION_ERROR(-20002,SQLCODE||':'||CHR(10)||'ERR MSG: '||SUBSTR(SQLERRM, 1, 100)|| DBMS_UTILITY.FORMAT_ERROR_BACKTRACE); rollback; end;