使用plsql创建定时任务并执行

本文介绍了如何使用PL/SQL在Oracle数据库中创建和管理定时任务,包括查询现有的定时任务、理解`INTERVAL`参数以设置执行频率、创建新任务的语法,以及使用`DBMS_JOB`包中的相关过程如`SUBMIT`、`BROKEN`、`RUN`等。此外,还讨论了可能导致定时任务无法正常运行的原因和解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言~

          我们知道plsql工具的使用非常强大,使用它来创建存储过程以及定时任务都非常简单。上篇文章讲解到使用plsql创建存储过程及调试,那么今天文章内容就是讲解使用plsql创建定时任务,以及让定时任务执行。

在使用plsql创建定时任务之前,我们有必要先了解一下oracle中的job定时任务的一些内容。

1)、 查询oracle中的job

oracle查看哪个存储过程对应的哪个定时器

select * from dba_jobs t where upper(t.what) like %参数%;

oracle查询所有定时器

select * from dba_jobs;

oracle查看正在运行的job

select * from dba_jobs_running;

下面讲解一下job的相关字段内容,以便能更加了解

字段(列)            类型                        描述

    job                  number            作业标识符。无论是进出口还是重复执行都不能改变它。

log_user            varchar2(30)    提交作业时登录的用户

priv_user           varchar2(30)    默认权限应用于此作业的用户

schema_user    varchar2(30)    对任务作语法分析的用户模式

last_date               date             最后一次成功运行任务的时间

last_sec             varchar2(8)     这是最后一次成功执行的开始。如hh24:mm:ss格式的 last_date日期的小时,分钟和秒

this_date              date              正在运行任务的开始时间,如果没有运行任务则为null

this_sec             varchar2(8)     如hh24:mm:ss格式的this_date日期的小时,分钟和秒

next_date             date              下一次定时运行任务的时间,如果为“4000/1/1”,不代表是 job没有运行,还需查看broken的值

broken               varchar2(1)      如果Y,则不尝试运行此作业。

interval              varchar2(200)  在执行开始时评估的日期函数将成为下一个日期。

failuses             number             这项工作自上次成功以来曾经历过多少次失败?

what                  varchar2(2000) 执行任务的PL/SQL块(存储过程名称)    

其中最重要的字段就是job 这个值就是我们操作job的id号,what 操作存储过程的名称,next_date 执行的时间,interval执行间隔

2)、执行间隔interval 运行频率

描述                              INTERVAL参数值

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

每天早上8点30分         &nbs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值