1

我已经使用 DBMS_SCHEDULER 创建了一个作业,它将调用一个 SP 并且 SP 执行所需的工作。现在我的问题是如何安排该作业每天运行两次?我的意思是我希望该作业每天在下午 1 点和下午 4 点运行(这只是一个示例。我可能必须在@diff time 运行,但每天运行两次)。

谢谢

4

1 回答 1

4

这很简单。

使用 PL/SQL Developer,打开 Jobs 并编辑某个 Job。在计划部分的作业属性中,将“频率”设置为每天,将“按小时”参数设置为“1,4”。

使用 PL/SQL 代码将是这样的:

BEGIN
 DBMS_SCHEDULER.CREATE_JOB (
   job_name        => 'sachi.example_job',
   job_type        => 'PLSQL_BLOCK',
   job_action      => 'BEGIN      
                         DBMS_STATS.GATHER_TABLE_STATS(''sachi'',''anytablename'');  
                       END;',
   start_date      =>  TO_DATE('22-02-2013 14:00','DD-MM-YYYY HH24:MI'),
   repeat_interval => 'FREQ=DAILY; BYHOUR=11,15', 
   enabled         =>  TRUE,
   comments        => 'Gather table statistics');
END;
/
于 2013-02-21T09:03:52.473 回答