Sql 将作业添加到计划程序以每天自动调用该作业
我创建了一个每天09:00:00运行的作业 下面是我用来创建作业的代码段:Sql 将作业添加到计划程序以每天自动调用该作业,sql,oracle,job-scheduling,dbms-scheduler,Sql,Oracle,Job Scheduling,Dbms Scheduler,我创建了一个每天09:00:00运行的作业 下面是我用来创建作业的代码段: BEGIN Dbms_Scheduler.create_job( job_name => 'PROECSS_STATE_ARCH' ,job_type => 'STORED_PROCEDURE' ,job_action => 'TEST' -- Procedure Name
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运行存储过程“测试”
如何将此作业添加到计划程序,以便每天自动调用此作业?
有人能告诉我吗???你也需要指定
按小时运行作业,以便每天晚上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;
/
要在方案上运行此操作,您需要创建作业
权限。否则,您需要在任何其他特权用户上运行此操作。在这种情况下,将作业操作指定为
job_action => '<SCHEMA_NAME>.TEST'
非常感谢。如果我执行上面的代码片段,它会每天运行吗?如果我以后要编辑,此作业将存储在何处。有什么想法吗?是的,我没有创造工作的特权。谢谢:)@vkreddy,是的,每天早上9点运行。我在回答中添加了一个如何编辑已创建作业的示例。作业已成功创建。但该程序尚未执行。请建议@dba这不应该是过程状态吗?是的,工作名称是过程状态状态状态。
BEGIN
DBMS_SCHEDULER.SET_ATTRIBUTE (
name => 'PROECSS_STATE_ARCH',
attribute => 'repeat_interval',
value => 'freq=DAILY; byhour=10' --Everyday by 10 AM.
);
END;