我建立一个调用a包的b存储过程的job,
b存储过程有一个输入参数。
现在执行,10分钟后运行一次
请问如何建立

解决方案 »

  1.   

    variable job1 number;
    begin
    dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL(0001);end;',sysdate,'sysdate+1/1440');
    commit;
    end;错误如下ORA-06550: 第 2 行, 第 92 列: 
    PLS-00103: 出现符号 "0001"在需要下列之一时:
     ) , * & | = - + < / > at
       in is mod remainder not rem => .. <an exponent (**)>
       <> or != or ~= >= <= <> and or like LIKE2_ LIKE4_ LIKEC_
       between || multiset member SUBMULTISET_
    符号 ",在 "0001" 继续之前已插入。
    job1
      

  2.   

    SQL> variable job1 number;
    SQL> begin
      2  dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL('0001');end;',sysdate,'sysdate+1/1440');
      3  commit;
      4  end;
      5  /begin
    dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL('0001');end;',sysdate,'sysdate+1/1440');
    commit;
    end;ORA-06550: 第 2 行, 第 92 列: 
    PLS-00103: 出现符号 "0001"在需要下列之一时:
     ) , * & | = - + < / > at
       in is mod remainder not rem => .. <an exponent (**)>
       <> or != or ~= >= <= <> and or like LIKE2_ LIKE4_ LIKEC_
       between || multiset member SUBMULTISET_
    符号 ",在 "0001" 继续之前已插入。
    job1
    ---------
    SQL> 
    SQL> variable job1 number;
    SQL> begin
      2  dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL(0001);end;',sysdate,'sysdate+1/1440');
      3  commit;
      4  end;
      5  /begin
    dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL(0001);end;',sysdate,'sysdate+1/1440');
    commit;
    end;ORA-06550: 第 1 行, 第 110 列: 
    PLS-00215: 字符串长度限制在范围 (1...32767)
    ORA-06512: 在 "SYS.DBMS_JOB", line 79
    ORA-06512: 在 "SYS.DBMS_JOB", line 136
    ORA-06512: 在 line 2
    job1
    ---------
    SQL> 
    SQL> variable job1 number;
    SQL> begin
      2  dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL(0001);end;',sysdate,'sysdate+1/1440');
      3  commit;
      4  end;
      5  /begin
    dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL(0001);end;',sysdate,'sysdate+1/1440');
    commit;
    end;ORA-06550: 第 1 行, 第 110 列: 
    PLS-00215: 字符串长度限制在范围 (1...32767)
    ORA-06512: 在 "SYS.DBMS_JOB", line 79
    ORA-06512: 在 "SYS.DBMS_JOB", line 136
    ORA-06512: 在 line 2
    job1
    ---------
    SQL> 
    SQL> variable job1 number;
    SQL> begin
      2  dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL('0001');end;',sysdate,'sysdate+1/1440');
      3  commit;
      4  end;
      5  /begin
    dbms_job.submit(:job1,'declare P_SYSNO  VARCHAR2; begin PAK_IMPORT_BUSBILL.IMPORT_BUSBILL('0001');end;',sysdate,'sysdate+1/1440');
    commit;
    end;ORA-06550: 第 2 行, 第 92 列: 
    PLS-00103: 出现符号 "0001"在需要下列之一时:
     ) , * & | = - + < / > at
       in is mod remainder not rem => .. <an exponent (**)>
       <> or != or ~= >= <= <> and or like LIKE2_ LIKE4_ LIKEC_
       between || multiset member SUBMULTISET_
    符号 ",在 "0001" 继续之前已插入。
    job1
      

  3.   

    --先创建要在job中调用的过程
    create or replace procedure test_proc
    as
    begin
    PAK_IMPORT_BUSBILL.IMPORT_BUSBILL(0001);
    end test_proc;
    /--建立job
    variable job1 number;
    begin
    dbms_job.submit(:job1,'test_proc;',sysdate,'sysdate+10/24*60');
    commit;
    end;
    /