关于oracle job 提问,紧急

aimer311 2007-05-23 03:02:36
要实现的目标是每天的0点0分执行
update bbsleftTree set flag_3=0;该语句一次。开始时间是明天早上的0点0分

参考别人的代码,如下:
----创建job

----创建一个自定义过程
  SQL> create or replace procedure MYPROC as
   2 begin
   3 update bbslefttree set flag_3=0;
   4 end;
   5 /

SQL> variable job1 number;

  SQL>

  SQL> begin

   2 dbms_job.submit(:job1,'MYPROC;',sysdate,'sysdate+1');  --每天执行一次

   3 end;

   4 /

----运行JOB
  SQL> begin
   2 dbms_job.run(:job1);
   3 end;
   4 /

----将job的初始运行时间改为2007-05-24 00:00:00
SQL> begin
2 DBMS_JOB.CHANGE(:job1,null,to_date('2007-05-24 00:00:00'),null);
3 end;

不知道是否有问题?请帮忙看看,
...全文
241 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
1.应该在update bbslefttree set flag_3=0;
后面加上commit;
2.参考例子:
SQL> variable jobno number;
SQL> begin
sys.dbms_job.submit(job => :jobno,
what => 'jyc_undo_set;',
next_date => to_date('29-04-2007 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'trunc(sysdate,''DD'')+1'
);
end;
/
aimer311 2007-05-23
  • 打赏
  • 举报
回复
up
hdyd 2007-05-23
  • 打赏
  • 举报
回复
就是这样

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧