oracle中job如何设定每小时的第10分钟执行?

间隔我设定的是TRUNC(sysdate,'hh24')+1/24+10/(24*60)可以实现吗?... 间隔我设定的是
TRUNC(sysdate,'hh24') +1/24+ 10 / (24*60)
可以实现吗?
展开
 我来答
杜爷1号
推荐于2017-10-01 · 知道合伙人软件行家
杜爷1号
知道合伙人软件行家
采纳数:4973 获赞数:9186
毕业于福建农林大学,本科学士学位。从事IT行业3年,曾参与过多个大型项目的需求调研、软件研发。

向TA提问 私信TA
展开全部
  可以实现的,先创建一个存储过程,在创建Job。
  我们在项目开发中,常常会有一些复杂的业务逻辑。使用oracle的存储过程,可以大大减少java程序代码的编写工作量,而且存储过程执行在数据库上,这样可以利用oracle的良好性能支持,极大地提高程序执行效率和稳定性。定时执行存储过程,就要用到job。
  先创建一个存储过程:

SQL> create or replace procedure MYPROC as
   2 begin
   3 update table_name set date= 'TRUNC(sysdate,'hh24') +1/24+ 10 / (24*60)';
   4 end;
   5 /

创建JOB :
  SQL> variable job1 number;
  SQL>
  SQL> begin
   2 dbms_job.submit(:job1,'MYPROC;to_date('00:10:00','HH:MI:SS'),'sysdate+1/24');  //每天24h,即每小时运行myproc过程一次
   3 end;
   4 /

运行JOB :
  SQL> begin
   2 dbms_job.run(:job1);
   3 end;
   4 /
晕逍遥
2012-07-09 · TA获得超过457个赞
知道小有建树答主
回答量:250
采纳率:0%
帮助的人:277万
展开全部
这个是oracle的定时任务,是可以实现的。你的job写好了吗?你是next->不会设定?
这个就是
先创建一个存储过程

SQL> create or replace procedure MYPROC as
   2 begin
   3 update table_name set date= 'TRUNC(sysdate,'hh24') +1/24+ 10 / (24*60)';
   4 end;
   5 /

创建JOB
  SQL> variable job1 number;
  SQL>
  SQL> begin
   2 dbms_job.submit(:job1,'MYPROC;to_date('00:10:00','HH:MI:SS'),'sysdate+1/24');  //每天24h,即每小时运行myproc过程一次
   3 end;
   4 /

运行JOB
  SQL> begin
   2 dbms_job.run(:job1);
   3 end;
   4 /
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
guojinhui10000
2012-07-09 · 超过24用户采纳过TA的回答
知道答主
回答量:284
采纳率:100%
帮助的人:82万
展开全部
declare
v_job number;
begin
sys.dbms_job.submit(job => v_job,
what => 'pro_;',
next_date => TRUNC(sysdate,'hh24') +1/24+ 10 / (24*60),
interval => 'TRUNC(sysdate,'hh24') +1/24+ 10 / (24*60)');
commit;
end;
/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式