DBMS_JOB.SUBMIT(:jobno,//job号
'your_procedure;',//要执行的过程
trunc(sysdate)+1/24,//下次执行时间
'trunc(sysdate)+1/24+1'//每次间隔时间);
删除job:dbms_job.remove(jobno);
修改要执行的操作:job:dbms_job.what(jobno,what);
修改下次执行时间:dbms_job.next_date(job,next_date);
修改间隔时间:dbms_job.interval(job,interval);
停止job:dbms.broken(job,broken,nextdate);
启动job:dbms_job.run(jobno);
例子:
create or replace procedure procdemo as
begin
delete from leave_word where title like '%..%' or content like '%..%';
commit;
end procdemo;
/
VARIABLE jobno number;
begin
DBMS_JOB.SUBMIT(:jobno,
'Procdemo;',
SYSDATE, 'trunc(SYSDATE) + 1');--每天00:00点删除一次
commit;
end;
/
JOB_QUEUE_PROCESSES=4
'your_procedure;',//要执行的过程
trunc(sysdate)+1/24,//下次执行时间
'trunc(sysdate)+1/24+1'//每次间隔时间);
删除job:dbms_job.remove(jobno);
修改要执行的操作:job:dbms_job.what(jobno,what);
修改下次执行时间:dbms_job.next_date(job,next_date);
修改间隔时间:dbms_job.interval(job,interval);
停止job:dbms.broken(job,broken,nextdate);
启动job:dbms_job.run(jobno);
例子:
create or replace procedure procdemo as
begin
delete from leave_word where title like '%..%' or content like '%..%';
commit;
end procdemo;
/
VARIABLE jobno number;
begin
DBMS_JOB.SUBMIT(:jobno,
'Procdemo;',
SYSDATE, 'trunc(SYSDATE) + 1');--每天00:00点删除一次
commit;
end;
/
注意事项:
init<sid>.ora中如下参数打开
JOB_QUEUE_INTERVAL=60 JOB_QUEUE_PROCESSES=4
job_queue_keep_connections=true