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

1、创建计划任务:

Sql代码

    XNUMBER; 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('JobNumberis:'||to_char(x)); COMMIT; D; XNUMBER; 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('JobNumberis:'||to_char(x)); COMMIT; END;

以上主要注意三个参数:

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

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

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

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

Sql代码

    select*fromuser_jobs;

查看调度任务

    select*fromdba_jobs_running;

查看正在执行的调度任务

    select*fromdba_jobs;

查看执行完的调度任务

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

【编辑推荐】

    Oracle数据文件的特性介绍获得Oracle系统性能的典型方案Oracle提高SQL的执行效率的3种好用方法Oracle表中数据导出成 Txt格式的方案Oracle 11g R2数据卫士的增强特性表现