Oracle dbms_scheduler.create_job Error



我试图在oracle 10g数据库中创建一个简单的计划事件。我一直在尝试使用dbms_scheduler.create_job。下面是我写的脚本:

dbms_scheduler开始。Create_job (

)

job_name => 'disengagementChecker',

job_type => 'PLSQL_BLOCK',

job_action => 'INSERT INTO .patientclassrellobs (patientClassID,observationTypeID) VALUES (1,11)',

start_date => SYSDATE,

repeat_interval => 'FREQ= minute;INTERVAL=1',

comments => '我正在测试调度程序');结束;

当我运行这个命令时,oracle抛出这些错误

ORA-06550:第15行,第3列:

PLS-00103:遇到符号

;符号";"取代"end- file"继续。

我不明白是什么原因导致这个错误。你知道是什么导致了这个错误吗?或者为什么会发生这种情况?

提前感谢!

进球居然

JOB_ACTION必须是一个合法的PL/SQL块,而不仅仅是一个合法的SQL语句。使用:

job_action => '
  BEGIN
    INSERT INTO PatientClassRelObs(patientClassID,observationTypeID)
    VALUES (1, 11);
  END;',

也许这是一个特定的环境或一些代码没有发布的问题。要排除故障,从已知可以工作的东西开始,每次添加一个小更改,直到出现故障。

从下面的代码开始,使用SQL*Plus

SQL> begin
  2     dbms_scheduler.create_job(
  3             job_name   => 'TEST_JOB',
  4             job_type   => 'PLSQL_BLOCK',
  5             job_action => 'BEGIN NULL; END;',
  6             start_date => systimestamp,
  7             enabled    => true);
  8  end;
  9  /
PL/SQL procedure successfully completed.
SQL> select status, log_date from dba_scheduler_job_run_details where job_name = 'TEST_JOB';
STATUS                         LOG_DATE
------------------------------ ---------------------------------------------------------------------------
SUCCEEDED                      26-MAR-14 11.37.59.533000 PM -05:00

相关内容

  • 没有找到相关文章

最新更新