oracel dbms_jobs包可以提交作业到作业队列中,这个包中还提供其它一些函数管理以前提交的作业,如对作业进行修改、禁止或删除等操作。

常用函数:

submit(),提交作业到作业队列。

isumbit(),

remove(),从作业队列中删除作业。

change(),改变已有作业的参数。

what(),改变作业要执行的代码。

next_date(),改变作业下一次执行时间。

interval(),改变作业执行的时间间隔。

broken(),暂停执行作业。

run(),强制执行作业。

最常用的submit()函数:

dbms_jobs.submit(

job out binary_integer,

what in varchar2,

next_date in date default sysdate,

interval in varchar default null,

no_parse in boolean default false,

instance in binary_integer default any_instance,

force in boolean default false

);

submit函数参数:

job,作业的作业号,是个输出参数,所以调用submit函数时,这个参数要指定一个已存在的变量。

what,作业要执行的代码,一般是存储过程。

next_date,下一次作业运行的日期。

interval,作业执行的间隔时间,这个参数默认值是null,也就是what指定的代码只在next_date这一时间执行一次。

no_parse,默认值是false,当参数值是false,提交作业时就对what指定的代码进行语法分析;当参数值是true,第一次运行what指定代码时才进行语法分析。

instance,指明运行作业的数据库实例。

force,如果是true,instance可以是任何正数;如果是false,instance指定的实例必须正在运行。

示例:

var jobno number;

begin

dbms_job.submit(:jobno,'pro_name;',trunc(sysdate)+(18/24),'trunc(sysdate+1,''hh'')');--每天18点执行

commit;

end;

上面这段话要在 命令窗口 下运行,如在pl/sql developer里面的-->新键-->命令窗口

这样就会在每天的18点执行存储过程pro_name。

---------------------------------------------------------------------------------------------------------------------------

用法DEMO:  
     DBMS_JOB.SUBMIT(:jobno,//job号   
                                     'your_procedure;',//要执行的过程   
                                     trunc(sysdate)+1/24,//下次执行时间   
                                     'trunc(sysdate)+1/24+1'//每次间隔时间   
                                   );   
     删除job:dbms_job.remove(jobno);   
     修改要执行的操作:job:dbms_job.what(jobno,what);   
     修改下次执行时间:dbms_job.next_date(job,next_date);   
     修改间隔时间:dbms_job.interval(job,interval);   
     停止job:dbms.broken(job,broken,nextdate);   
     启动job:dbms_job.run(jobno);

附:调用语句和参数说明:

dbms_job.submit( job out binary_integer,

what       in   archar2,
next_date     in   date,
interval     in   varchar2,
no_parse     in   boolean)
其中:
●    job:输出变量,是此任务在任务队列中的编号;
●    what:执行的任务的名称及其输入参数;
●    next_date:任务执行的时间;
●    interval:任务执行的时间间隔。

DEMO示例:

declare   
                jobid     number;   
                v_sql     varchar2(2000);   
    begin   
                v_sql:='begin   
                                      if     to_char(sysdate,''HH24:MI'')=''15:30''     then   -- 15:30执行
                                            insert     into     rjck.rkjl(cksj)     select     cksj     from     wzcs.ckjl;   
                                            dbms_output.put_line(''inserted     success'');   
                                      end     if;   
                                      commit;   
                                exception   
                                      when     others     then   
                                      rollback;   
                                      dbms_output.put_line(SQLERRM);   
                                end;   
                              ';

dbms_job.submit(jobid,v_sql,sysdate,'sysdate+1/1440');

dbms_job.run(jobid);

dbms_output.put_line('job     '||to_char(jobid)||'     is     running');

end;

转载于:https://www.cnblogs.com/hailiang/archive/2012/04/07/2435629.html

Oracle的dbms_jobs 自动计划相关推荐

  1. oracle 产看执行计划_ODBA 技能SPM计划

    OBA技能1-获取执行计划 OBA技能2-执行计划顺序 OBA技能3-执行计划顺序表连接 ODBA 技能4实战执行计划 ODBA 技能5 固定执行计划 因为每次统计信息作业在收集完信息后,会触发ACS ...

  2. Oracle 查看 SQL执行计划

    Oracle 查看 SQL执行计划 SQL性能分析 执行计划可以用来分析SQL的性能 一.查看执行计划的方法 1. 设置autotrace set autotrace off: 此为默认值,即关闭au ...

  3. oracle数据库定时每天自动备份语句,Oracle数据库定时自动备份

    Oracle数据库定时自动备份批处理代码(Windows) 这是最近写的一个Oracle数据库自动备份的批处理,经过测试正常运行,记录如下.包括两部分,逻辑备份和冷备份,如有不完整之处,还往看到本文的 ...

  4. Mysql,SqlServer,Oracle主键自动增长的设置

    Mysql,SqlServer,Oracle主键自动增长的设置 参考文献 http://blog.csdn.net/andyelvis/article/details/2446865 1.把主键定义为 ...

  5. Oracle查看SQL执行计划的方式

    Oracle查看SQL执行计划的方式 获取Oracle sql执行计划并查看执行计划,是掌握和判断数据库性能的基本技巧.下面案例介绍了多种查看sql执行计划的方式: 基本有以下几种方式: 1.通过sq ...

  6. oracle 数据执行计划,Oracle 常见的执行计划步骤(explain结果的Description数据参考)...

    在PL/SQL中 执行explain plain for  select ... 查看Description 数据参考: Oracle常见的执行计划步骤 这里我们介绍一些常见的执行计划中的步骤及算法. ...

  7. 资源放送丨《Oracle数据库SQL执行计划的取得和解析》PPT视频

    前段时间,墨天轮邀请Oracle优化方面的资深专家 陈晓辉 老师分享了<Oracle数据库SQL执行计划的取得和解析>,在这里我们共享一下PPT和视频,供大家参考学习. Oracle优化资 ...

  8. 2场直播丨Oracle数据库SQL执行计划的取得和解析、一次特殊的 Oralce 硬解析性能问题的技术分享...

    1. Oracle数据库SQL执行计划的取得和解析- 2021.02.23 2月23日(周二)晚八点直播课,Oracle优化资深专家陈晓辉,以专业ORACLE数据库技术支持工程师的角度讲解SQL文的执 ...

  9. oracle 自动异地备份,实现Oracle异地数据自动备份方案 | 学步园

    来源:网络/责编:编程入门 作者:不详 相关命令 文中主要用到三个命令,这里先单独介绍一下: export: 将数据库中数据备份成一个二进制系统文件,它有三种模式: 用户模式.表模式.整个数据库模式. ...

最新文章

  1. 接口、类、抽象类、对象的另类解释
  2. 用GDI+转BMP为WMF、EXIF、EMF格式
  3. 双击打开Inventor文件
  4. 基因结构显示服务器,服务器固定结构 Server fixed structure
  5. win11WiFi无法连接网络怎么办 Windows11WiFi无法连接网络的解决方法
  6. 怎么找网页源文件位置_原神白铁块位置分布图 原神白铁块怎么找
  7. 启动多个SlickEdit实例
  8. 项目经理所应具备的八项素质:
  9. linux常用cat,Linux常用操作命令之cat
  10. Beyond Compare和UltraCompare有什么不一样
  11. mac小白怎么下载网页视频?
  12. 个人所得税分几个等级
  13. 4G内存适合装哪个版本matlab,4G内存装win7 32位还是64位|单条4G内存选32位还是64位系统性能实测...
  14. 清水居士与数名志愿者大年三十慰问夏家河村周边贫困家庭
  15. 【推荐架构day2】微博怎么给你推荐信息的:基本原理
  16. face_recognition模块方法集合
  17. 05 爬虫应用(2)——抓取昵图性感美女图片(针对传统翻页图片版本)
  18. JSP页面禁用EL表达式的原因和实现方法
  19. 基于vue-cli快速构建
  20. 一些比较好的流体力学视频

热门文章

  1. Qt实践录:常见控件操作示例2
  2. Netty实战项目:Spring boot 程序的聊天程序
  3. 【java】Java8 BiConsumer函数式接口
  4. 1.1.0-简介-P5-时间、时钟和事件顺序
  5. Spring : Spring 切入点(Pointcut)
  6. 【SpringMVC】SpringMVC :@RequestMapping注解
  7. ERROR 1017 (HY000): Can't find file: './hue3/auth_user.frm' (errno: 13 - Permission denied)
  8. 05-IntelliJ IDEA清空项目缓存
  9. java 设置月份_java – 为什么Calendar.JUNE将月份设置为7月?
  10. Java并发:五种线程安全类型、线程安全的实现、枚举类型