介绍几个数据字典视图:
dba_jobs 本数据库定义到任务队列的任务
dba_jobs_running 目前正在运行的任务
user_jobs 当前用户拥有的任务
时间间隔 参数interval 设置
每天运行一次 'sysdate+1'
每小时运行一次 'sysdate+1/24'
每10分钟运行一次 'sysdate+10/(24*60)'
每30秒运行一次 'sysdate+30/(24*60*60)'
每星期一次 'sysdate+7'
不再运行该任务并删除它 null
以上时间间隔不能保证任务的下一次运行在一个特定的时间,仅仅能够指定一个任务两次运行之间的时间间隔
特定日期或时间的例子
每天午夜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)'
在总结之前,先把Job的参数一一说明一下:
job参数是由Submit()过程返回的binary_ineger。这个值用来唯一标识一个工作;
what参数是将被执行的PL/SQL代码块;
next_date参数指识何时将运行这个工作。写Job的时候可以不指定该值,默认值是:“4000-1-1”;
interval参数何时这个工作将被重执行。
其中Interval这个值是决定Job何时,被重新执行的关键。
附上自己写的两个例子:
--每天凌晨一点执行
DECLARE
X NUMBER;
BEGIN
sys.dbms_job.submit(job => X,
what => 'begin pro_job_test.pro_job_day; end;',
next_date =>to_date('13-07-2011 01:00:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => ' TRUNC(SYSDATE+1)+1/24 ');
SYS.DBMS_OUTPUT.PUT_LINE( 'Job Number is: ' || to_char(x));
commit;
END;
--每月1日执行
DECLARE
X NUMBER;
BEGIN
sys.dbms_job.submit(job => X,
what => 'begin pro_job_test.pro_job_month; end;',
next_date =>to_date('01-08-2011 01:00:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'trunc(last_day(sysdate)+1)');
SYS.DBMS_OUTPUT.PUT_LINE( 'Job Number is: ' || to_char(x));
commit;
END;
分享到:
相关推荐
Oracle Job 定时任务 Oracle Job 定时任务是 Oracle 数据库中的一种定时执行任务的机制,它允许用户在指定的时间点或每天的某个时间点自行执行任务。 一、查询系统中的 Job 可以通过以下视图查询系统中的 Job: *...
Oracle JOB 定时任务 定时执行存储过程
Oracle的Job定时功能是Oracle数据库系统提供的一种自动化任务调度机制,允许用户设定特定的时间点或时间间隔执行数据库操作。在项目开发中,特别是在大数据管理和分析的场景下,定时任务经常被用于更新数据、生成...
7. Oracle 定时任务的检查和修复步聚:通过检查 JOB_QUEUE_PROCESSES 参数的设置和修改,重启数据库,可以修复 Oracle 定时任务不能自动执行的问题。 这篇文章总结了 Oracle 定时任务不能自动执行的问题的检查和...
oracle JOB常见的执行时间, 在初学者定义JOB时,对于执行时间往往不知道如何设置. 该文档列举了常见的定义方式.可以由此进行扩展.
Oracle Job定时任务是Oracle数据库系统中一种强大的自动化功能,它允许管理员或开发人员安排数据库任务在特定的时间点或按照预定义的频率自动执行。Oracle Job主要用于执行PL/SQL块、存储过程、包或其他数据库操作,...
Oracle Job 定时任务 Oracle Job 是 Oracle 数据库中的一种定时任务机制,允许用户在指定的时间点或每天的某个时间点执行任务。通过 Oracle Job,用户可以根据需要,设置任务的执行时间和频率,从而提高数据处理...
### ORACLE如何停止一个JOB:深入解析与实践 在Oracle数据库管理中,有时我们需要停止正在运行的JOB,这可能是由于各种原因,如发现错误、优化性能或调整资源分配。本文将详细阐述如何在Oracle中查询并停止正在运行...
Oracle数据库中的定时任务(也称为作业或job)是Oracle系统中一个非常重要的子系统,它可以帮助用户自动执行一些常规性的任务,比如备份数据库、清理日志等。通过合理地利用Oracle定时任务,可以极大地提高系统的...
Oracle Job是Oracle数据库中的一个强大特性,主要用于在特定时间或间隔执行数据库操作,例如数据备份、维护任务或者定期的数据处理。以下是对Oracle Job使用方法和技巧的详细说明: 一、创建Oracle Job Oracle Job...
在Oracle数据库系统中,"Job"是用于执行定时任务的重要工具,它允许用户安排数据库作业在特定的时间点或按照特定的间隔自动运行。这在管理大量数据和维护数据库的日常运营中非常有用。"存储过程"是预编译的SQL和PL/...
Oracle Job 的使用对于实现定时任务、批处理操作和维护工作至关重要。以下是对 Oracle Job 使用的详细解释: 1. **创建 Job**: 创建 Job 可以通过 `DBMS_JOB.SUBMIT` 存储过程完成。例如,在提供的代码中,创建了...
plsql创建存储过程并创建job定时任务执行详细笔记文档总结 在 Oracle 中,plsql 是一种强大的编程语言,可以用来创建存储过程和定时任务执行。在本文中,我们将详细介绍如何使用 plsql 创建存储过程并创建 job 定时...
Oracle 定时删除数据 并释放空间 ,创建存储过程并使用job完成。
Oracle 定时执行存储过程 ... Oracle 定时执行存储过程提供了一个灵活的方式来执行存储过程,包括更新工作状态、更改工作设置、设置重执行频度、提交工作、设定执行时间、删除工作和立即执行工作等多种操作。
### Oracle定时导出脚本详解 #### 一、Oracle定时导出脚本基本结构与功能说明 在Linux环境下,为了实现Oracle数据库的自动化备份管理,通常会借助于shell脚本来完成定时导出任务。以下是一个典型的Oracle定时导出...
通过熟练掌握这些知识点,你可以在PL/SQL Developer中高效地管理和执行Oracle定时任务,从而提升数据库维护的自动化程度和工作效率。记得根据实际需求调整任务参数,确保任务执行的准确性和可靠性。
总结起来,Oracle的JOB功能对于定期执行数据库维护任务、数据处理或其他自动化工作流非常有用。通过编写和应用适当的脚本,我们可以轻松创建、管理和控制这些定时任务,确保我们的数据库系统按照预定的时间表高效...