Oracle job 学习

本文详细介绍了如何在 Oracle 数据库中创建、运行和删除定时任务(job),包括使用 PL/SQL 创建存储过程并设置不同时间间隔执行的任务。通过示例脚本展示了如何在每天晚上23点执行特定任务。

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

Oracle job

1、创建job定时任务
variable job_create_table number;
begin
dbms_job.submit(:job_create_table ,'create_table_customer;',trunc(sysdate)+1/24,'TRUNC(LAST_DAY(SYSDATE))+1+1/24'); --每月1日凌晨1点执行,从今天开始
end;
/

2、运行job定时任务
begin
dbms_job.run(:job_create_table );
end;
/

3、删掉job定时任务
begin
dbms_job.remove(:job_create_table );
end;
/


4、创建存储过程
create or replace procedure create_table_customer is
begin


commit;
end create_table_customer;
/


实际使用:
在plsql中执行如下脚本可以创建一个在每天晚上23点执行的job

begin
sys.dbms_job.submit(job => :job, -- job编号
what => 'dbms_output.pub_line(''asdf'');', -- 执行脚本
next_date => to_date('17-01-2011 16:17:31', 'dd-mm-yyyy hh24:mi:ss'), -- 下次执行时间
interval => 'trunc(sysdate)+23/24'); -- 执行时间间隔
commit;
end;

其中:interval 参数的几个可能的示范值如下:
A,每5分钟执行一次
interval => 'trunc(sysdate,'mi')+5/24/60'
B,每小时执行一次,整点执行
interval => 'trunc(sysdate,'HH')+1/24'
C,一个小时后执行
interval => 'sysdate+1/24'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值