ORACLE 存储过程 回滚操作
各位大侠,ORACLE 存储过程 回滚操作 急 急 急 !
CREATE OR REPLACE PROCEDURE ADDINVN IS
BEGIN
INSERT INTO bbb select * from aaa;
execute immediate 'truncate table kkx_ld_temp';
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
INSERT INTO SYS_PROC_JOB_LOG VALUES('PROC_DATA_INSERT','hello','失败','新增数据','hello','hello',sysdate,1);
commit;
END ADDINVN;
往一表里插入数据,执行 execute immediate 'truncate table kkx_ld_temp'时捕捉到异常,然后rollback操作。没有回滚成功。
------解决方案--------------------truncate 语句是自动提交的,回滚也没用
------解决方案--------------------ddl语句本身就是隐式提交。