环境:oralce 10g 用户角色 dba
------------------------------------------------
create or replace procedure pro_test --存过
as
begin
       insert into test_job values(sys_guid(),'输电任务');
       commit;
end;
-------------------------------------------------
SQL> variable jobno number;SQL> begin
  2    sys.dbms_job.submit(job => :jobno,
  3                        what => 'pro_test;',
  4                        next_date => to_date('21-02-2008 17:37:26', 'dd-mm-yyyy hh24:mi:ss'),
  5                        interval => 'sysdate+1/1440');
  6    commit;
  7  end;
  8  /SQL> begin dbms_job.run(:jobno); end;
ORA-12011: 无法执行 1 作业
ORA-06512: 在 "SYS.DBMS_IJOB", line 406
ORA-06512: 在 "SYS.DBMS_JOB", line 272
ORA-06512: 在 line 2
jobno
---------
5请各位高手赐教一下~~  不清这个dbms_job.run(job) job这个参数是什么意思

解决方案 »

  1.   

    要输入job的ID号:
     select job from user_jobs;
      

  2.   

    你要先定义了JOBDECLARE
      jobno NUMBER;
    begin
      sys.dbms_job.submit(job => jobno,
       .....后面一样
    end 
      

  3.   


    --job是oracle是Submit()过程的参数之一
    --这个过程有五个参数:
    --job what next_date interval no_parse
    如下:
    procedure submit(
    job out binary_ineger,
    what in varchar2,
    next_date in date,
    interval in varchar2,
    no_parse in booean:=false
    )
    job参数是由submit()过程返回的binary_ineger。这个值用来唯一标识一个工作。
    what参数是将被执行的pl/sqk代码块
    next_date参数指识何时将运行这个工作。
    interval参数何时这个工作将被重执行。
    no_parse参数只是此工作在提交时或执行时是否应进行语法分析
      

  4.   

    begin dbms_job.run(53); end;
     
    ORA-12011: execution of 1 jobs failed
    ORA-06512: at "SYS.DBMS_IJOB", line 406
    ORA-06512: at "SYS.DBMS_JOB", line 275
    ORA-06512: at line 2
    不知为何报错~~~~
      

  5.   

    还没有呢,现在任务已建好jobid 为53;
    执行begin dbms_job.run(53); end; 不成功~
      

  6.   

      按 你的 我在我机子上测试 完全是可以的! 你最后
    begin dbms_job.run(53); end;  不成功  提示的是什么呀,53 为jobid ,在dba_jobs 有没?
      

  7.   


    begin dbms_job.run(53); end;
     
    ORA-12011: execution of 1 jobs failed
    ORA-06512: at "SYS.DBMS_IJOB", line 406
    ORA-06512: at "SYS.DBMS_JOB", line 275
    ORA-06512: at line 2   
      

  8.   

      把你的job 语句换台数据库服务器测试下吧! g了下好像有存在 数据库环境的问题导致的情况
      

  9.   

    请问楼主怎么解决的啊?
    我也出现相同的问题:
    ORA-12011: 无法执行 1 作业
    ORA-06512: 在 "SYS.DBMS_IJOB", line 406
    ORA-06512: 在 "SYS.DBMS_JOB", line 272
    ORA-06512: 在 line 3
      

  10.   

    你用oracle 自己开发的SqlDeveleper 这个工具手动去建这个Job   这样高效、不会出错~~~