我创建的作业每天09:00:00运行。
以下是我用来创建工作的片段:
BEGIN
Dbms_Scheduler.create_job(
job_name => 'PROECSS_STATE_ARCH'
,job_type => 'STORED_PROCEDURE'
,job_action => 'TEST' -- Procedure Name
,start_date => SYSDATE 9:00:00
,repeat_interval => 'freq=DAILY'
,enabled => TRUE
,comments => 'job schedule for archiving process_state');
END;
唯一的目的是每天09:00:00运行存储过程'TEST'
如何将此作业添加到调度程序以在每天自动调用此作业? 有谁能告诉我??
答案 0 :(得分:0)
您还需要指定byhour
以便每天晚上9点开始工作。
BEGIN
Dbms_Scheduler.create_job(
job_name => 'PROECSS_STATE_ARCH'
,job_type => 'STORED_PROCEDURE'
,job_action => 'TEST' -- Procedure Name
,start_date => SYSDATE
,repeat_interval => 'freq=DAILY; byhour=9' --Added byhour
,enabled => TRUE
,comments => 'job schedule for archiving process_state');
END;
/
要在您的方案上运行此功能,您需要CREATE JOB
权限。否则,您需要在任何其他特权用户上运行此操作。在这种情况下,将job_action指定为
job_action => '<SCHEMA_NAME>.TEST'
要编辑作业,您在DBMS_SCHEDULER包中有SET_ATTRIBUTE过程。
例如: -
BEGIN
DBMS_SCHEDULER.SET_ATTRIBUTE (
name => 'PROECSS_STATE_ARCH',
attribute => 'repeat_interval',
value => 'freq=DAILY; byhour=10' --Everyday by 10 AM.
);
END;