CREATE OR REPLACE PROCEDURE CXY_CCGC_TEST3_P
AS
param1 NUMBER;
param2 NUMBER;
param3 NUMBER;
BEGIN
--循环执行
for i in 1..10 loop
DBMS_OUTPUT.put_line('第' || i || '次循环');
param1 := 1;
param2 := 0;
--第8次出现异常导致整个存储过程中断,。
IF i = 8 THEN
param3 := param1 / param2;
END IF;
begin
--第6次出现异常跳过错误的执行 不进行处理 进行下个循环
IF i = 6 THEN
param3 := param1 / param2;
END IF;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('sqlcode : ' || sqlcode);
DBMS_OUTPUT.put_line('sqlerrm : ' || sqlerrm);
ROLLBACK;
end;
COMMIT;
end loop;
EXCEPTION