nstc.net
当前位置:首页 >> orAClE 的 joB 已经建立 我想半小时运行 一次可以 ... >>

orAClE 的 joB 已经建立 我想半小时运行 一次可以 ...

declare job1 number(4); begin sys.dbms_job.submit(job => job1, what => 'declare s1 varchar2(200); s2 varchar2(200); begin if to_number(to_char(sysdate,''hh24'') between 8 and 22) then p_test.usp_test_jobincs(s1,s2); end if; end...

dbms_job.submit( job out binary_integer, whatinarchar2, next_date indate, intervalinvarchar2, no_parseinboolean) ●job:输出变量,是此任务在任务队列中的编号; ●what:执行的任务的名称及其输入参数; ●next_date:任务执行的时间; ●...

dbms_job.submit(:job1,'MYPROC;',sysdate,'sysdate+5/1440');--每天1440分钟,即一分钟运行test过程一次,分子为5则为每分钟执行一次

创建job和数据库能有什么直接关系? job多,那么时间上有有所把握,避免多job(主要是小号资源比较多的job)同时执行,抢占资源,,影响系统运行,也要避免job在交易忙时执行,影响数据库交易运行。

Interval =>TRUNC(LAST_DAY(SYSDATE))+1

declare job1 number(4); begin sys.dbms_job.submit(job => job1, what => 'declare s1 varchar2(200); s2 varchar2(200); begin if to_number(to_char(sysdate,''hh24'') between 8 and 22) then p_test.usp_test_jobincs(s1,s2); end if; end...

这个是oracle的定时任务,是可以实现的。你的job写好了吗?你是next->不会设定? 这个就是 先创建一个存储过程 SQL> create or replace procedure MYPROC as 2begin 3update table_name set date= 'TRUNC(sysdate,'hh24') +1/24+ 10 / (24*60)';...

begin dbms_scheduler.create_job(job_name => 'scan_table', job_type => 'STORED_PROCEDURE', job_action => 'sp_scan_table', --自定义的扫描表存储过程 start_date => to_timestamp('20150827 00:00:00', 'yyyymmdd hh24:mi:ss'), repeat_in...

这个没法看,不过可以写个日志表 在执行开始时插入一个当前时间,在执行结束时再插入一个时间,这样基本可以算出个大概时间。 create procedure xxxasv_time varchar2(20)begininsert into 日志表 values ('开始',to_char(sysdate,'yyyy-mm-dd h...

可以考虑多个job执行同一个过程,还需要考虑job的执行消耗时间问题,实际开发中肯定不会出现每秒执行一次的job的,这样对服务器压力太大了,如果必须这么做就需要重新考虑你业务逻辑设计了

网站首页 | 网站地图
All rights reserved Powered by www.nstc.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com