1.创建job
variable jobno number;
begin
dbms_job.submit(job=>:jobno,what=>'p_test;',next_date=>sysdate,interval=>'TRUNC(sysdate)+1+17/24',instance=>1);
commit;
end;
/
--注:
1)next_date:job下次运行时间;
2)interval:job运行的时间间隔。
2.查看job
select * from dba_jobs;
select * from dba_jobs_running;
select * from user_jobs;
select * from all_jobs;
3.人工运行job
begin
dbms_job.run(99);
commit;
end;
/
--注:
1)这里,99为job号。
4.停止job
begin
dbms_job.broken(99,true,next_date);
commit;
end;
/
--注:
1)99:这里,99为job号;
2)true:表示是否停止job,也可以为false;
3)next_date:job停止的时间,sysdate表示立刻停止。
5.修改job间隔时间
begin
dbms_job.interval(99,interval);
commit;
end;
/
--注:
1)99:这里,99为job号;
2)interval:job运行的时间间隔。
6.修改job下次运行时间
begin
dbms_job.next_date(99,next_date);
commit;
end;
/
--注:
1)99:这里,99为job号;
2)next_date:job下次运行的时间。
7.修改job调用的操作
begin
dbms_job.what(99,'p_test1;');
commit;
end;
/
--注:
1)99:这里,99为job号;
2)'p_test1':job调用的过程名。
8.删除job
begin
dbms_job.remove(99);
commit;
end;
/
--注:
1)99:这里,99为job号。