可以使用JOB来定期执行存储过程

解决方案 »

  1.   

    看语句的执行计划?
    用PL/SQL DEVELOPER工具很方便
      

  2.   

    :)
    有一段时间没用SQL SERVER了就是用JOB+PROCEDURE
      

  3.   

    具体怎么用,我在oracle管理里没有看到诸如job或作业的东西
      

  4.   

    管理器里面应该有
    或者直接用语句在sql*plus里面创建
    DBMS_JOB.SUBMIT(:jobno,//job号
                    'your_procedure;',//要执行的过程
                    trunc(sysdate)+1/24,//下次执行时间
                    'trunc(sysdate)+1/24+1'//每次间隔时间
                   );
    删除job:dbms_job.remove(jobno);
    修改要执行的操作:job:dbms_job.what(jobno,what);
    修改下次执行时间:dbms_job.next_date(job,next_date);
    修改间隔时间:dbms_job.interval(job,interval);
    停止job:dbms.broken(job,broken,nextdate);
    启动job:dbms_job.run(jobno);例子:
    VARIABLE jobno number;
    begin
          DBMS_JOB.SUBMIT(:jobno, 
                  'Procdemo;', 
                   SYSDATE, 'SYSDATE + 1/720');
             commit;
    end;
    /