求教pl/sql 循环中出现异常捕获异常并继续执行循环的方法

解决方案 »

  1.   

    SQL> set serveroutput on;
    SQL> 
    SQL> DECLARE
      2    x INT;
      3  BEGIN
      4    FOR i IN 1 .. 10 LOOP
      5      --将发生异常的语句使用begin..exception..end包围
      6      BEGIN
      7        x := 'aaa'; --异常
      8      EXCEPTION
      9        WHEN OTHERS THEN
     10          NULL; --忽略异常,不做处理
     11      END;
     12      --继续执行
     13      dbms_output.put_line(i);
     14    END LOOP;
     15  END;
     16  /
     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    PL/SQL procedure successfully completed
     
    SQL>