怎样实现每天自动执行oracle的存储过程一次

2025-03-02 02:23:52
推荐回答(1个)
回答1:

1,创建一个存储过程 bb 作用是往pig表中插入数据
SQL> create or replace procedure JOB_PRO_TEST as
2 begin
3 insert into JOB_TEST values(sysdate);
4 end;
5 /
Procedure created

2,创建一个job,名称为job2010 ;作用是每分钟(60×24=1440)执行一次存储过程JOB_PRO_TEST。
SQL> variable job2010 number;
SQL> begin
2 dbms_job.submit(:job2010,'JOB_PRO_TEST;',sysdate,'sysdate+1/1440');
3 end;
4 /
注意:这里系统自动生成job id 为41
PL/SQL procedure successfully completed
job2010
---------
41

3,运行job2010
SQL> begin
2 dbms_job.run(:job2010);
3 end;
4 /
PL/SQL procedure successfully completed
job2010
---------
41
4,删除job2010
SQL> begin
2 dbms_job.remove(:job2010);
3 end;
4 /