一般情况下定时任务是配合存储过程使用的,所以正常情况下创建定时任务步骤如下:
- 创建存储过程
存储过程根据实际情况进行编写,这里提供一个简单示例
# 创建存储过程
create or replace procedure del_t_device_status_log is
begin
execute immediate 'truncate table T_DEVICE_STATUS_LOG' ;
end;
/
- 创建定时器
declare
jobno number;
begin
dbms_job.submit(jobno, --定时器ID
'del_t_device_status_log;', -- 执行的过程名
sysdate, --定时器开始的时间
'sysdate+30/1440' --设置定时器执行频率,每隔30分钟执行一次
);
commit;
end;
/
定时器设置:
sysdate+(3/24/60), --定时器开始的时间(延迟3分钟)
‘sysdate+10/1440’ --设置定时器执行频率,每隔10分钟执行一次
其他时间类推。。。
- 启动定时器
定时任务创建好后,可以通过plsql查看任务编号
-- 启动定时器(29-表示定时任务的编号,根据实际情况填写)
begin
dbms_job.run(29);
end;
-- 停止定时器
begin
dbms_job.broken(29, sys.diutil.int_to_bool(1));
end;
-- 查看当前用户所有的任务
select *from user_jobs;