解决方案 »

  1.   


    declare
    job_te number;
    begin 
    job_te := 1; 
    end; 
      

  2.   


    这个执行确实没有报错,但是我在下面执行job的时候还是报错了begin dbms_job.submit(:job_te,'test_cc;',sysdate,'sysdate+1/1440');
     end; 
    还是报的并非所有变量都已绑定,求讲解
      

  3.   


    这个执行确实没有报错,但是我在下面执行job的时候还是报错了begin dbms_job.submit(:job_te,'test_cc;',sysdate,'sysdate+1/1440');
     end; 
    还是报的并非所有变量都已绑定,求讲解
    :job_te 这里的冒号去掉
      

  4.   

    SQL> 
    SQL> begin
      2    sys.dbms_job.submit(job_te, 'test;', sysdate, 'sysdate+1/1440');
      3    commit;
      4  end;
      5  command 窗口执行感觉SQL没结束一样,还在等待状态ORA-06550: 第 2 行, 第 23 列: 
    PLS-00201: 必须声明标识符 'JOB_TE'
    ORA-06550: 第 2 行, 第 3 列: 
    PL/SQL: Statement ignored
    SQL窗口执行说job_te未定义,这是什么情况begin
      sys.dbms_job.submit(1, 'test;', sysdate, 'sysdate+1/1440');
      commit;
    end;
    ORA-06550: 第 2 行, 第 23 列: 
    PLS-00363: 表达式 '1' 不能用作赋值目标
    ORA-06550: 第 2 行, 第 3 列: 
    PL/SQL: Statement ignored
    还有这边为啥不能直接用1赋值呢,非要用个变量,搞不定啊,求正确代码和顺序
      

  5.   


    declare job_te number; 
    begin 
    sys.dbms_job.submit(job_te, 'test;', sysdate, 'sysdate+1/1440');
      commit;
    end;  
      

  6.   

    SQL> 
    SQL> declare job_te number; 
      2  begin 
      3  sys.dbms_job.submit(job_te, 'test;', sysdate, 'sysdate+1/1440');
      4    commit;
      5  end; 
      6  
      7  
      这是在command 窗口执行的吗?怎么我这还是不会自动结束啊???
      

  7.   


    SQL> 
    SQL> declare job_te number;
      2  begin
      3  sys.dbms_job.submit(job_te, 'test;', sysdate, 'sysdate+1/1440');
      4    commit;
      5  end;
      6  /
    PL/SQL procedure successfully completed
    SQL> 
    命令窗口要加上‘/’,或者可以直接在sql窗口执行
      

  8.   

    终于搞定了,原来COMMAND窗口要打一个/才会执行!