当前位置 > 主页 > 万和大讲堂 >


你会在Oracle中使用JOB吗?

2015-06-18 11:42

  你是Oracle高手吗?你能熟练的使用Oracle中的各项功能吗?


  一、设置初始化参数job_queue_processes


  sql>altersystemsetjob_queue_processes=n;(n>0)


  job_queue_processes最大值为1000


  查看jobqueue后台进程


  sql>selectname,descriptionfromv$bgprocess; 南京OCA培训


  二、dbms_jobpackage用法介绍


  包含以下子过程:


  Broken()过程。


  change()过程。


  Interval()过程。


  Isubmit()过程。


  Next_Date()过程。


  Remove()过程。


  Run()过程。


  Submit()过程。


  User_EXPort()过程。


  What()过程。


  1、Broken()过程更新一个已提交的工作的状态,典型地是用来把一个已破工作标记为未破工作。


  这个过程有三个参数:job、broken与next_date.


  PROCEDUREBroken(jobINbinary_integer,


  BrokenINboolean,


  next_dateINdate:=SYSDATE)


  job参数是工作号,它在问题中唯一标识工作。


  broken参数指示此工作是否将标记为破--TRUE说明此工作将标记为破,而FLASE说明此工作将标记为未破。南京万和Oracle认证培训


  next_date参数指示在什么时候此工作将再次运行。此参数缺省值为当前日期和时间。


  job如果由于某种原因未能成功之行,Oracle将重试16次后,还未能成功执行,将被标记为broken重新启动状态为broken的job,有如下两种方式;


  a、利用dbms_job.run()立即执行该job


  sql>begin


  sql>dbms_job.run(:jobno)该jobno为submit过程提交时返回的jobnumber


  sql>end;


  sql>/


  b、利用dbms_job.broken()重新将broken标记为false


  sql>begin


  sql>dbms_job.broken(:job,false,next_date)


  sql>end;


  sql>/


  2、Change()过程用来改变指定工作的设置。


  这个过程有四个参数:job、what、next_date与interval.


  PROCEDUREChange(jobINbinary_integer,


  WhatINvarchar2,


  next_dateINdate,


  intervalINvarchar2)


  此job参数是一个整数值,它唯一标识此工作。


  What参数是由此工作运行的一块PL/SQL代码块。


  next_date参数指示何时此工作将被执行。


  interval参数指示一个工作重执行的频度。


  3、Interval()过程用来显式地设置重执行一个工作之间的时间间隔数。这个过程有两个参数:job与interval.


  PROCEDUREInterval(jobINbinary_integer,


  IntervalINvarchar2)


  job参数标识一个特定的工作。interval参数指示一个工作重执行的频度。


  4、ISubmit()过程用来用特定的工作号提交一个工作。这个过程有五个参数:job、what、next_date、interval与no_parse.南京OCA培训


  PROCEDUREISubmit(jobINbinary_ineger,


  WhatINvarchar2,


  next_dateINdate,


  intervalINvarchar2,


  no_parseINbooean:=FALSE)


  这个过程与Submit()过程的唯一区别在于此job参数作为IN型参数传递且包括一个由开发者提供的工作号。如果提供的工作号已被使用,将产生一个错误。


  5、Next_Date()过程用来显式地设定一个工作的执行时间。这个过程接收两个参数:job与next_date.


  PROCEDURENext_Date(jobINbinary_ineger,


  next_dateINdate)


  job标识一个已存在的工作。next_date参数指示了此工作应被执行的日期与时间


  6、Remove()过程来删除一个已计划运行的工作。这个过程接收一个参数:


  PROCEDURERemove(jobINbinary_ineger);


  job参数唯一地标识一个工作。


  这个参数的值是由为此工作调用Submit()过程返回的job参数的值。已正在运行的工作不能由调用过程序删除。南京万和Oracle认证培训


  7、Run()过程用来立即执行一个指定的工作。这个过程只接收一个参数:


  PROCEDURERun(jobINbinary_ineger)


  job参数标识将被立即执行的工作。


  8、使用Submit()过程,工作被正常地计划好。


  这个过程有五个参数:job、what、next_date、interval与no_parse.


  PROCEDURESubmit(jobOUTbinary_ineger,


  WhatINvarchar2,


  next_dateINdate,


  intervalINvarchar2,


  no_parseINbooean:=FALSE)


  job参数是由Submit()过程返回的binary_ineger.这个值用来唯一标识一个工作。


  what参数是将被执行的PL/SQL代码块。


  next_date参数指识何时将运行这个工作。


  interval参数何时这个工作将被重执行。


  no_parse参数指示此工作在提交时或执行时是否应进行语法分析--TRUE指示此PL/SQL代码在它第一次执行时应进行语法分析,而FALSE指示本PL/SQL代码应立即进行语法分析。南京万和Oracle认证培训


  9、User_Export()过程返回一个命令,此命令用来安排一个存在的工作以便此工作能重新提交。


  此程序有两个参数:job与my_call.


  PROCEDUREUser_Export(jobINbinary_ineger,


  my_callINOUTvarchar2)


  job参数标识一个安排了的工作。my_call参数包含在它的当前状态重新提交此工作所需要的正文。南京OCA培训


  10、What()过程应许在工作执行时重新设置此正在运行的命令。这个过程接收两个参数:job与what.


  PROCEDUREWhat(jobINbinary_ineger,


  WhatINOUTvarchar2)


  job参数标识一个存在的工作。what参数指示将被执行的新的PL/SQL代码。


  三、查看相关job信息


  1、相关视图


  dba_jobs


  all_jobs


  user_jobs


  dba_jobs_running包含正在运行job相关信息


最近开班 more>
  • Python基础班
  • Java全栈开发
  • 前端基础班
  • 软件测试
  • 云原生精英班
  • 云网预科班
  • CISP
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCM 12C
  • OCP 19C
  • RHCE 9.0
  • 随时开课
  • 12月26日
  • 随时开课
  • 12月4日
  • 12月16日
  • 12月9日
  • 12月21日
  • 1月6日
  • 12月30日
  • 12月16日
  • 12月21日
  • 12月7日
  • 12月7日
  • ——
  • 随时开课
  • 12月16日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入