我写了一个存储过程,想用Job自动执行它,但是运行job的时候出错了,不知道什么问题
存储过程如下:create or replace procedure update_datasize ascursor curisselect tablecode,datasizefrom T_SUBMITDATA where tablecode is not null; str varchar(2000):=''; str1 varchar(2000):='';v_num binary_integer;beginfor I in cur loopstr:='select count(0) from gdcreditbase.'||I.tablecode;execute immediate(str) into v_num;if v_numi.datasize thenstr1:='update T_SUBMITDATA set datasize='||v_num||' where tablecode ='''||I.tablecode||''''; execute immediate(str1);commit;end if;end loop;end;复制代码job如下declare job1 number;begin dbms_job.submit(job1,'update_datasize;',sysdate,'next_day(sysdate,''星期日'')+0/24'); end; 复制代码执行job的时候出现下面这个问题
执行job语句begindbms_job.run(44);end;复制代码出错提示:
ERROR at line 1:
ORA-12011: execution of 1 jobs failed
ORA-06512: at "SYS.DBMS_IJOB", line 463
ORA-06512: at "SYS.DBMS_JOB", line 282
ORA-06512: at line 3
|