Oracle 数据库的调度作业

一、基础环境

  操作系统:Windows 或 Linux

  数据库版本:Oracle Database 11.2.0.1.0 及以上版本

二、具体步骤

   1、查询当前用户所有的调度作业

select * from user_jobs

   2、创建调度作业

  declare
  job_id pls_integer;
begin
  sys.dbms_job.submit(job => job_id,
                      what => '存储过程名称;',
                      next_date => sysdate,
                      interval => 'trunc(sysdate+1)');
  commit;
end;
/

  说明:其中

  what 是 需要执行的存储过程名称,需要以半角分号结尾,并使用单引号包起来。存储过程不能有传入参数和传出参数。

  next_date 是下次执行时间,一般可以指定为 sysdate

  interval 是 周期,需要使用单引号包起来。以下是常用的周期代码

代码 说明
trunc(sysdate+1) 每天0:00:00
trunc(last_day(sysdate))+1+1/24 每月1日 1:00:00

  3、删除调度作业

begin
	dbms_job.remove(job_id);
	commit;
end;
/

  说明:其中 job_id 是 user_jobs 的 job 字段值。

猜你喜欢

转载自blog.csdn.net/u011046671/article/details/127804272