CHANGE

更改与任务关联的参数

声明

CHANGE(JOB IN INT,
    WHAT      IN VARCHAR(4000),
    NEXT_DATE IN TIMESTAMP,
    INTERVAL  IN VARCHAR(200) DEFAULT 'NULL');

结构

参数 说明
JOB 要修改的任务编号
WHAT 修改任务的执行内容
NEXT_DATE 修改任务的下次执行时间
INTERVAL 修改任务的执行时间间隔

示例

    
create or replace procedure dbms_job_test is
begin
dbms_output.put_line('dbms_job_test');
end;
/

create or replace procedure dbms_job_change is
begin
dbms_output.put_line('dbms_job_change');
end;
/

--SYSDATE,立即执行
--sysdate+1/(24*60*60),每隔1秒执行一次
exec dbms_job.submit(0, 'dbms_job_test;', SYSDATE, 'sysdate+1/(24*60*60)');

declare
jobid int;
begin
--获取作业编号
select job into jobid from user_jobs;
--更改作业,执行内容为“dbms_job_change”,间隔3秒执行一次。
dbms_job.change(jobid, 'dbms_job_change;', SYSDATE, 'sysdate+3/(24*60*60)');
end;
/

declare 
jobid int;
begin
--获取作业编号
select job into jobid from user_jobs;
--删除指定作业
dbms_job.remove(jobid);
end;
/
drop procedure dbms_job_test;
drop procedure dbms_job_change;