建一个作业,每天晚上执行一个存储过程

本文介绍了如何在Oracle数据库中创建定时任务来执行特定的存储过程。通过示例展示了使用DBMS_JOB提交作业的方法,包括设定执行时间和周期,并提供了一个具体的存储过程用于演示。

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

1、建一个作业,每天晚上执行一个存储过程
(A)
begin
  sys.dbms_job.submit(job => :job,
                      what => 'DECLARE X VARCHAR2(30);
I DATE;
BEGIN
I:=SYSDATE;
X:=TO_CHAR(I,''YYYY/MM/DD'');
PROC_INV_AGING_BALANCES_CT(X);
END;',
                      next_date => to_date('10-05-2007 15:29:17', 'dd-mm-yyyy hh24:mi:ss'),
                      interval => 'SYSDATE+1/72');
  commit;
end;
(B)
CREATE OR REPLACE PROCEDURE TmpInt AS
  v_name varchar2(10);
  v_empno number(4);
BEGIN
  v_name := 'exam';
  SELECT max(empno)+1 into v_empno from emp;
  INSERT INTO emp(empno,ename)
  VALUES(v_empno,v_name);
EXCEPTION
  WHEN OTHERS THEN
    NULL;
  COMMIT;
END TmpInt;
/

VARIABLE v_JobNum number
BEGIN
  DBMS_JOB.SUBMIT(:v_JobNum,
                        'TmpInt;',
                        SYSDATE,
                        'SYSDATE + (60 / (24*60*60))'
);
END;
/
SQL/PLUS下运行通过
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值