create or replace procedure hupsTestJob
as
begin
insert into testtwo(testid,begindate,jjdate,title) select a.testid,a.BEGINDATE,a.jldate,a.title from test a where a.jldate>a.begindate ;
end;//建立作业variable job1 number;
begin
 dbms_job.submit(:job1,'hupsTestJob;',sysdate,'sysdate+1/1440');
end;//调用作业
begin
  dbms_job.run(:job1);
end;
------------------------------
在建立作业的时候语法出错 为撒?

解决方案 »

  1.   

    哭死 怎么没人呀`````variable job1 number; 
    begin 
    dbms_job.submit(:job1,'hupsTestJob;',sysdate,'sysdate+1/1440'); 
    end; 
    在运行这里的时候出现语法出错......怎么改?
      

  2.   

    变量不应该用:job1表示
    直接写成job1
      

  3.   

    //建立作业 variable job1 number; 
    begin 
    dbms_job.submit(:job1,'hupsTestJob;',sysdate,'sysdate+1/1440'); 
    end; 
    --------------------------在SQLPLUS 是这样写没错 
    如果是PLSQL的话declare job1 number;
    begin
         dbms_job.submit(job1,'testaaaaaa;',sysdate,'sysdate+1/1440');
    commit;
    dbms_job.run(job1);
    end; 
    要这么写```
    自己搞定了```
      

  4.   

    用toad执行了一下,variable job1 number;
    begin
    dbms_job.submit(:job1,'AAhupsTestJob;',sysdate,'sysdate+1/1440/30');
    end;与declare 
    job1 number;
    begin
    dbms_job.submit(job1,'AAhupsTestJob;',sysdate,'sysdate+1/1440/30');
    end;
    都可以。
    但是不能识别 
    //建立job改成
     --建立job就可以了。
      

  5.   

    另外,在SQLPLUS中 variable job1 number;
    begin
    dbms_job.submit(:job1,'hupsTestJob;',sysdate,'sysdate+1/1440');
    end; 
    建立作业后,需要手动commit。