如果dbms_scheduler.create_job中没有repeat_interval,该怎么办?

时间:2016-09-27 11:43:45

标签: oracle oracle11g jobs

我用这个创建了一个Job。

BEGIN 
   dbms_scheduler.create_job ( 
    job_name => 'test_JOB', 
    job_type => 'PLSQL_BLOCK', 
    JOB_ACTION => 'UP_TRYNR;', 
    start_date =>sysdate, 
    enabled => true, 
    repeat_interval => 'FREQ=DAILY;INTERVAL=1'
   ); 
END;

如果我创建作业而未指定repeat_interval将会发生什么?即。

BEGIN 
   dbms_scheduler.create_job ( 
    job_name => 'test_JOB', 
    job_type => 'PLSQL_BLOCK', 
    JOB_ACTION => 'UP_TRYNR;', 
    start_date =>sysdate, 
    enabled => true, 
   ); 
END; 

任何建议都会有所帮助。感谢。

1 个答案:

答案 0 :(得分:1)

ContentPage包中包含的功能可用于设置和管理需要根据 - 重复或非重复 - 计划运行的任务的时间表和执行。 DBMS_SCHEDULER打破了将任务分为3个部分的过程:

  1. 创建时间表
  2. 确定一个“程序” - 它们表示您希望的程序 运行
  3. 创建一个“工作” - 他们的意思是将程序链接到一个计划。
  4. 顾名思义DBMS_SCHEDULER,描述了程序需要执行的频率。这有点像UNix中的cron语法。

    如果您在没有任何Repeat_interval的情况下创建它,它将仅在指定的Repeat_interval执行once,然后保持startdate