`

Java Oracle JOBS 自动调度

 
阅读更多
一、创建一个存储过程

create or replace procedure MY_Procedure
is
          --这里用到了游标
          cursor cur is
              select * from users where length(name) > 10 ;
begin
          for user in cur
          loop
              insert into users_temp values(user.id,user.passwd); 
          end loop;
end;

二、创建作业

variable job_num number;
begin
          dbms_job.submit(:job_num,'MY_Procedure;',sysdate,'sysdate+1');
          commit;
end;

三、运行作业

begin
          dbms_job.run(:job_num);
end;

四、查询作业

select priv_user,job,what from user_jobs;

五、 删除作业

begin
          dbms_job.remove(:job_num);
end;

六、时间

Sysdate+1/1440                         每1分钟执行一次
Sysdate+5/1440                     每5分钟执行一次
trunc(sysdate+1)+2/24           下一天的2点(凌晨)执行一次
'SYSDATE + 7'                         最后一次执行的7天之后执行
'SYSDATE + 1/48'                        每半个小时执行一次
'NEXT_DAY(TRUNC(SYSDATE), ''MONDAY'') + 15/24'                                  每个礼拜一的下午3点
'NEXT_DAY(ADD_MONTHS(TRUNC(SYSDATE, ''Q''), 3),''THURSDAY'')'          每个季度的第一个星期四





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





最后那一项可以参考如下:

  每天午夜12点 'TRUNC(SYSDATE + 1)'

  每天早上8点30分 'TRUNC(SYSDATE + 1) + (8*60+30)/(24*60)'

  每星期二中午12点 'NEXT_DAY(TRUNC(SYSDATE ), ''TUESDAY'' ) + 12/24'

  每个月第一天的午夜12点 'TRUNC(LAST_DAY(SYSDATE ) + 1)'

  每个季度最后一天的晚上11点 'TRUNC(ADD_MONTHS(SYSDATE + 2/24, 3 ), 'Q' ) -1/24'

  每星期六和日早上6点10分 'TRUNC(LEAST(NEXT_DAY(SYSDATE, ''SATURDAY"), NEXT_DAY(SYSDATE, "SUNDAY"))) + (6*60+10)/(24*60)'

  其中li_jobno是它的ID,可以通过这个ID停掉这个任务,最后想说的是不要执行多次,你可以在里面管理起来,发现已经运行了就不SUBMIT

  每天运行一次 'SYSDATE + 1'

  每小时运行一次 'SYSDATE + 1/24'

  每10分钟运行一次 'SYSDATE + 10/(60*24)'

  每30秒运行一次 'SYSDATE + 30/(60*24*60)'

  每隔一星期运行一次 'SYSDATE + 7'

  不再运行该任务并删除它 NULL

  每年1月1号零时    trunc(last_day(to_date(extract(year from sysdate)||'12'||'01','yyyy-mm-dd'))+1)



分享到:
评论

相关推荐

    oracle job

    Oracle Job是Oracle数据库中的一种调度工具,...通过Oracle Job,数据库管理员可以有效地自动化数据库维护任务,提高系统的可靠性并减少手动干预的需求。理解并熟练使用Oracle Job是数据库管理和优化的关键技能之一。

    Oracle-plan.rar_oracle

    本文将深入探讨Oracle中的定时执行计划任务,这是数据库管理员(DBA)进行自动化运维的重要工具。 首先,Oracle提供的调度器(Scheduler)是实现定时任务的关键组件。它允许用户设置一系列的任务,如数据备份、清理...

    oraclejob例子

    Oracle Job的全称是Database Scheduler Job,它通过Oracle Database Scheduler(数据库调度器)进行管理。下面我们将深入探讨Oracle Job的创建、配置、管理和使用等相关知识点。 1. **Oracle Database Scheduler...

    oracle scheuler

    通过对 Jobs、Programs、Schedules、Events、Chains 和 Job Classes 的综合运用,可以构建出复杂多变的任务调度机制,极大地提高了数据库应用的自动化程度。通过深入了解这些概念并掌握相关技术,可以显著提升系统的...

    最完整的Toad For Oracle使用手册

    - **Java Manager**:提供了Java管理器的使用方法。 - **Network Utilities**:提供了网络实用工具的使用方法。 - **Task Scheduler**:介绍了任务调度器的使用方法。 - **Unix Job Scheduler**:讲解了Unix作业调度...

    利用Quartz实现任务调度的集群

    【Quartz任务调度集群】是Java开发中解决定时任务需求的一种高效方案,它由OpenSymphony团队开发,自2001年以来广泛应用于各种项目。Quartz的核心优势在于其灵活性和简单性,允许开发者自由定义任务触发的时间表,...

    任务调度实例

    Quartz是一款开源的任务调度框架,它允许开发人员在Java应用程序中安排任务的执行。Quartz以其灵活性、可扩展性和稳定性而被广泛应用于各种项目中,无论是小型应用还是大型企业系统,都可以利用Quartz来实现定时任务...

    Quartz调度框架

    Quartz是一个功能强大的开源作业调度框架,专门设计用于Java平台。它不仅适用于J2SE应用,也能很好地融入J2EE环境中。Quartz的强大之处在于其灵活性与简单性的完美结合——无论是简单的定时任务还是复杂的调度需求,...

    Quartz 2.2.2数据库表格脚本

    Quartz 是一个开源的作业调度框架,广泛应用于Java应用程序中,用于执行定时任务。Quartz 2.2.2 版本是其在特定时间的一个稳定版本,它提供了丰富的功能来帮助开发者创建、安排和管理任务。在描述中提到的"数据库...

    quartz-2.2.3版本的quartz初始化sql语句

    Quartz是一款广泛使用的开源任务调度框架,它允许开发者在Java应用程序中定义和执行定时任务。在Quartz 2.2.3版本中,初始化数据库是使用Quartz的关键步骤,因为Quartz依赖于一个持久化存储来保存作业和触发器的信息...

    batch scheduler

    - 使用编程语言(如Java、Python、Go等)可以直接编写调度程序,实现对特定任务的控制。 - 数据库存储作业信息,如任务描述、执行时间、状态等,便于管理和查询。 3. **工具选择与应用场景**: - 对于小型项目,...

    Quartz 最新2.2.3版本所有jar包

    Quartz是一款开源的作业调度框架,它允许Java开发者在应用程序中安排复杂的定时任务。Quartz 2.2.3是该框架的一个稳定版本,提供了许多改进和修复,以确保更高效、可靠的任务调度。 首先,Quartz的核心特性在于其...

    spring-quartz所需jar包

    2. **Quartz Scheduler**: Quartz 是一个完全由Java编写的开源作业调度框架,用于创建、调度、执行和控制工作。它可以用于在任何Java应用中实现复杂的工作调度。Quartz的核心组件包括Job、Trigger、Calendar和...

    TestJob

    4. **数据库作业API**:熟悉数据库提供的作业管理API,如Oracle的DBMS_SCHEDULER,或者在其他数据库系统如MySQL的事件调度器。 5. **日志记录**:为了追踪和调试,TestJob应该有良好的日志记录功能,以便分析测试...

    Quartz的一个简单实例

    ### Quartz 的基本概念与应用实例解析 #### 一、Quartz 概述 Quartz 是 OpenSymphony 开源...开发者可以通过简单的配置和代码实现复杂的定时任务调度需求,这对于提高系统的自动化程度和降低维护成本具有重要意义。

    quartz持久化语句2021

    Quartz是一款广泛使用的开源任务调度框架,它允许开发者在Java应用程序中定义并执行定时任务。在分布式系统中,为了保证任务的可靠性和持久性,Quartz提供了数据库持久化功能,即将作业(Jobs)和触发器(Triggers)...

    Quartz

    Quartz的核心功能包括创建、调度和管理作业(Jobs)以及触发器(Triggers)。通过这些组件,开发者可以灵活地安排任务执行的时间和频率,比如每天、每周或按特定间隔执行。 1. **Quartz的基本概念** - **Job**: ...

Global site tag (gtag.js) - Google Analytics