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