1、新建一个存储过程
create or replace procedure p_insert_into_t1
as
begin
insert into t1
(select * from t where STATUS=1);
end;
2、新建一个作业
variable job_abc number;
begin
sys.dbms_job.submit(:job_abc,
'p_insert_into_t1;',
sysdate,
'sysdate+1/1440');
commit;
end;
其中,
参数1表示作业名字,参数2表示执行的存储过程,
参数3表示开始执行的时间,参数4表示执行的时间间隔
commit表示立即开始执行
执行成功后,返回job的ID
3、查询作业
select job,
log_user,
to_char(last_date,'yyyy-mm-dd hh24:mi:ss') last_date,
to_char(next_date,'yyyy-mm-dd hh24:mi:ss') next_date,
interval,
what
from user_jobs
4、执行作业
execute dbms_job.run(job_id);
5、删除作业
execute dbms_job.remove(job_id);
6、暂停和继续作业
execute dbms_job.broken(job_id,true);
execute dbms_job.broken(job_id,false);