龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

如何为Oracle数据库增加相应的计划任务

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
我经常在SQL Server上创建一些作业来定时执行一些相关任务,在 Oracle 数据库下一般都是通过相关编码的方式,通过某些项目自带的实际计划任务框架去对存储过程进行调用。今天才发现

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

1、创建计划任务:

Sql代码

  1. X NUMBER;  
  2. GIN  
  3. SYS.DBMS_JOB.SUBMIT(job => X,  
  4. what => 'PROC_YKTSJTB;',  

存储过程名称

  1. next_date => trunc(sysdate+5/1440,'MI'), 

下次执行时间

  1. interval => 'trunc(sysdate+1440/1440,''MI'')', 

间隔时间

  1. no_parse => FALSE);  
  2. SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x));  
  3. COMMIT;  
  4. D;  
  5. X NUMBER;  
  6. BEGIN  
  7. SYS.DBMS_JOB.SUBMIT(job => X,  
  8. what => 'PROC_YKTSJTB;',  

存储过程名称

  1. next_date => trunc(sysdate+5/1440,'MI'), 

下次执行时间

  1. interval => 'trunc(sysdate+1440/1440,''MI'')', 

间隔时间

  1. no_parse => FALSE);  
  2. SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x));  
  3. COMMIT;  
  4. END;  

以上主要注意三个参数:

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

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

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

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

Sql代码

  1. select * from user_jobs; 

查看调度任务

  1. select * from dba_jobs_running; 

查看正在执行的调度任务

  1. select * from dba_jobs; 

查看执行完的调度任务 ,上述的相关内容就是对为Oracle数据库增加相应的计划任务的描述,希望会给你带来一些帮助在此方面。

精彩图集

赞助商链接