【问题标题】:PL/SQL exception/goto/loopPL/SQL 异常/转到/循环
【发布时间】:2012-07-28 11:56:10
【问题描述】:

我有一个程序可以选择性地从系统中清除作业。它使用dbms_schedule.drop_job 来执行此操作。

我希望能够在一个光标下循环遍历一组作业。如果因为作业不存在而引发异常,我想捕获异常并继续循环。

【问题讨论】:

    标签: oracle exception plsql


    【解决方案1】:

    没有必要这样做。为什么不使用正确的架构和作业名称将光标内部连接到 ALL_SCHEDULER_JOBS

    这样可以保证工作确实存在。如果你想做一些除了忽略错误之外的事情,例如更新列表,你可以很容易地在代码中完成;流量控制不需要使用异常。

    如果你真的想使用异常,那么你可以使用user defined exception。或者(不一定是一个好主意)绝对抓住一切;例如:

    begin
       -- some stuff
       begin
          dbms_scheduler.drop_job(job_name => 'my_job');
       exception when others then
          -- do some stuff
       end;
    
    end;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-16
      • 2012-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-09
      相关资源
      最近更新 更多