各位高手:
   我想让oracle定时(如:每月一号00:00:00)完成一些相关数据的计算,然后把数据插入一些表中。请问:这个功能该如何实现?
   谢谢先!

解决方案 »

  1.   

    一个简单例子: 创建测试表
    SQL> create table a(a date);表已创建。创建一个自定义过程
    SQL> create or replace procedure test as
      2  begin
      3  insert into a values(sysdate);
      4  end;
      5  /过程已创建。创建JOB
    SQL> variable job1 number;
    SQL> 
    SQL> begin
      2  dbms_job.submit(:job1,'test;',sysdate,'trunc(add_months(sysdate,1),'mm')');  --每月的一号执行,下个月开始。插入动作添加到存储过程中。
      3  end;
      4  /PL/SQL 过程已成功完成。运行JOB
    SQL> begin
      2  dbms_job.run(:job1);
      3  end;
      4  /PL/SQL 过程已成功完成。
      

  2.   

    写个过程,然后定义个job,定期执行即可
      

  3.   

    declare
    job1 number;
    begin
    dbms_job.submit(job1,'test;',sysdate,'trunc(last_day(sysdate)+1,''mm'')');  --每月的一号执行,下个月开始。插入动作添加到存储过程中。
    commit;
    end;
    /