首页 > 解决方案 > DBMS_SCHEDULER 失败

问题描述

我执行这段代码:

CURSOR JOB_RUNS_cur (P_JOB_NAME IN VARCHAR2)
  IS
     SELECT COUNT ( * )
       FROM ALL_SCHEDULER_RUNNING_JOBS
      WHERE OWNER = 'BATCH'
        AND JOB_NAME = P_JOB_NAME;

   DerAktuelleJob   := 'BATCH_SST_AENDERUNGEN_JOB';

     OPEN JOB_RUNS_cur (DerAktuelleJob);

     FETCH JOB_RUNS_cur INTO Anzahl;

     CLOSE JOB_RUNS_cur;

     -- Bei Anzahl=0 läuft der Job aktuell nicht und kann gestartet werden
     IF Anzahl = 0 THEN
        **DBMS_SCHEDULER.ENABLE ('BATCH.BATCH_SST_AENDERUNGEN');**
        DBMS_SCHEDULER.ENABLE ('BATCH.' || DerAktuelleJob);
     END IF;

我有时会在以下位置收到此错误DBMS_SCHEDULER.ENABLE ('BATCH.BATCH_SST_AENDERUNGEN');

sql 查询错误:ORA-01013:用户请求中止当前操作
> ORA-00604: 递归 SQL 级别 1 出错
ORA-01013: 用户请求取消当前操作
ORA-06512: 在“SYS.DBMS_ISCHED”中,第 4790 行
ORA-06512: 在“SYS.DBMS_SCHEDULER”中,第 3020 行

谁能帮我分析/解决问题?

标签: oracleplsqlscheduler

解决方案


推荐阅读