为Oracle增加计划任务

WBOY
풀어 주다: 2016-06-07 16:55:35
원래의
873명이 탐색했습니다.

经常在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

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿