1定时调用存储过程,在pl/sql的平台上找到jobs,右击,新建一个job,在what里写入存储过程名称,在nextdate里写入执行时间.interval里写出间隔时间,就能建立一个job定时调用存储过程. 2代码写:在PLSQL中创建存储过程:create or replace procedure pro_onlineuser as begin insert into table_name values (?,?,?); commit; end pro_onlineuser; 在SQL命令窗口中启动任务: 在SQL>后执行:VARIABLE jobno number; begin DBMS_JOB.SUBMIT(:jobno,'pro_onlineuser;',SYSDATE,'sysdate+1/24/60');括号内依次为job名称,存储过程名,下次开始时间,间隔多久调用时间 commit; end;
每天早上8:00执行 interval 应该写?下次开始时间 写 SYSDATE对吗?
begin dbms_job.submit(job => :job, what => 'p_insertscxt;', next_date => to_date('16-03-2009 08:00:00', 'dd-mm-yyyy hh24:mi:ss'), interval => 'sysdate+1'); commit; end;
用job实现定时调用存储过程
2代码写:在PLSQL中创建存储过程:create or replace procedure pro_onlineuser
as
begin
insert into table_name values (?,?,?);
commit;
end pro_onlineuser;
在SQL命令窗口中启动任务:
在SQL>后执行:VARIABLE jobno number;
begin
DBMS_JOB.SUBMIT(:jobno,'pro_onlineuser;',SYSDATE,'sysdate+1/24/60');括号内依次为job名称,存储过程名,下次开始时间,间隔多久调用时间
commit;
end;
interval 应该写?下次开始时间
写 SYSDATE对吗?
dbms_job.submit(job => :job,
what => 'p_insertscxt;',
next_date => to_date('16-03-2009 08:00:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'sysdate+1');
commit;
end;
sys.dbms_job.submit(job => :job,
what => '存储过程名;',
next_date => to_date('16-03-2009 08:00:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'trunc(sysdate) + 1 + 8/24');
commit;
end;
/
2. 再执行:
begin
dbms_job.submit(job => :job,
what => '存储过程名;',
next_date => to_date('2009-03-16 08:00:00', 'yyyy-mm-dd hh24:mi:ss'),
interval => 'sysdate + 1 ');
commit;
end;
/