Heim  >  Artikel  >  Datenbank  >  为Oracle增加计划任务

为Oracle增加计划任务

WBOY
WBOYOriginal
2016-06-07 16:55:35871Durchsuche

经常在SQL Server上创建作业去定时执行某些任务,在Oracle下则一般都是通过编码的方式,通过项目自带的计划任务框架去调用存

  经常在SQL Server上创建作业去定时执行某些任务,,在Oracle下则一般都是通过编码的方式,通过项目自带的计划任务框架去调用存储过程。今天才发现,原来Oracle下创建一个计划任务要比SQL Server简单的多。

  1、创建计划任务:

  Sql代码

  X NUMBER;

  GIN

  SYS.DBMS_JOB.SUBMIT(job       => X,

  what      => 'PROC_YKTSJTB;',--存储过程名称

  next_date => trunc(sysdate+5/1440,'MI'),--下次执行时间

  interval  => 'trunc(sysdate+1440/1440,''MI'')',--间隔时间

  no_parse  => FALSE);

  SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x));

  COMMIT;

  D;

  X NUMBER;

  BEGIN

  SYS.DBMS_JOB.SUBMIT(job       => X,

  what      => 'PROC_YKTSJTB;',--存储过程名称

  next_date => trunc(sysdate+5/1440,'MI'),--下次执行时间

  interval  => 'trunc(sysdate+1440/1440,''MI'')',--间隔时间

  no_parse  => FALSE);

  SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x));

  COMMIT;

  END;

  以上主要注意三个参数:

  what  :需要计划任务执行的动作;

  next_date:下次计划任务执行的时间,具体时间可以根据oracle的trunc构造;

  interval:计划任务的执行周期;

  2、计划任务执行情况监控

  Sql代码

  select * from user_jobs;--查看调度任务

  select * from dba_jobs_running;--查看正在执行的调度任务

  select * from dba_jobs;--查看执行完的调度任务

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:MySQL数据库的授权原则Nächster Artikel:MySQL配置向导简介