现有一导数据存储过程,
在TOAD中建一JOBS调用该存储过程,
由于存储过程带参数,因此JOBS也带参数,
右键执行该JOBS,导数据正常!
但当JOBS设置自动执行时,存储过程未执行!
SELECT * FROM user_jobs,发现字段:FAILURES为2,说明失败了两次,
不知为何自动执行会失败!
望各位指教!不胜感激!

解决方案 »

  1.   

    看看你init.ora里边的job_queue_processes是不是为0 如果是 
    执行alter system set job_queue_processes=10; 然后再看看JOB好了没有
      

  2.   

    手工执行job可以不?若是手工执行可以,看看job_queue_processes是否为空?为空的话,使其不为空即可
      

  3.   

    查了,为:job_queue_processes=10
    问题是:JOBS设置成自动执行,调用其它的存储过程(不带参数)时没问题,
    但带参数调用时,自动执行就会出问题!
      

  4.   

    手工执行JOBS没问题,设置成自动运行时就不行了!
      

  5.   

    单独执行下你的存储过程 是不是存储过程报错呀还是你在写JOB参数的时候有问题
      

  6.   

    用程序调用存储过程是正常的!能正常执行!
    JOBS参数应该没问题,因为手工执行JOBS是正常的,参数能传过去!
      

  7.   

    JOBS中传的参数都默认写死了!怎么会传得不一样呢?
      

  8.   

    把你的Job脚本贴出来,大家看看
      

  9.   

    JOB脚本如下:
    BEGIN
      sys.dbms_job.CHANGE(job => :job, what => :what, next_date => :next_date, INTERVAL => :INTERVAL);
    END;:JOB=201
    :WHAT=SJJH_UPDATE_ALLTABLE(0,'自动',0);
    :NEXT_DATE=2007-04-02 10:20:00
    :INTERVAL=SYSDATE+30/1440
      

  10.   

    sys.dbms_job.CHANGE(job => :job, what => :what, next_date => :next_date, INTERVAL => :INTERVAL);variable job number;
    begin 
      dbms_submit(:job,
                  'SJJH_UPDATE_ALLTABLE(0,''自动'',0);'),
                  to_date('2007-04-02 10:20:00','yyyy-mm-dd HH24:mi:ss'),
                  'SYSDATE+30/1440'
                  );
    commit;
    end;
    /用这个建立job试一下.应该OK的.