救命啊,建job报错“并非所有变量都已关联”

时间:2021-11-04 20:41:55
建存储过程:

create or replace procedure syndataeverynight 
(IDNum in varchar2, 
Name_in in varchar2)
as 
begin 
update 。。。。。; 
update 。。。。。。;

commit;
end; 


建job:

begin
  sys.dbms_job.submit(job => :job,
                      what => 'syndataeverynight;',
                      next_date => to_date('14-11-2008 02:35:37', 'dd-mm-yyyy hh24:mi:ss'),
                      interval => 'SYSDATE+1');
  commit;
end;

报错“并非所有变量都已关联”

14 个解决方案

#1


 到底是执行存储过程出错,还是执行JOB出错?

#2


引用 1 楼 hdhai9451 的回复:
到底是执行存储过程出错,还是执行JOB出错?

JOB,存储过程没报错!谢谢

#3


执行JOB出错

#4


哪位高手帮帮忙啊!

#5


晕  你没看到你的过程里面有2个参数吗 
所以就 
报错“并非所有变量都已关联”

你看仔细点

#6


所以你的job无法创建的

#7


恩,谢谢你!
那两个参数是干什么的我不太清楚,麻烦指点一下!多谢!

#8


我也碰到一样的问题。应该是job=>这个地方出错,我猜测的。

#9


我把那两个参数去掉了,还是不行的!太郁闷了

#10


--JOB不是给你了?!

--在执行job之前先测试好你的存贮过程。

exec syndataeverynight;   --看测试结果是否正确?如可以的话,才使用JOB,否则重新调试。


begin
  sys.dbms_job.submit(job => :job,
                      what => syndataeverynight;',
                      next_date => to_date('15-11-2008', 'dd-mm-yyyy'),
                      interval => 'TRUNC(SYSDATE+1)');
  commit;
end;
/

#11


var job1 number;
exec dbms_job.submit(:job1,'syndataeverynight;',to_date('14-11-2008 02:35:37', 'dd-mm-yyyy hh24:mi:ss'),'SYSDATE+1');
exec dbms_job.run(:job1);

#12


 :job
变量没定义

怎么用???
var job1 number;
begin 
  sys.dbms_job.submit(job => :job1, 
                      what => syndataeverynight;', 
                      next_date => to_date('15-11-2008', 'dd-mm-yyyy'), 
                      interval => 'TRUNC(SYSDATE+1)'); 
  commit; 
end; 
/

#13


引用 11 楼 linzhangs 的回复:
SQL codevar job1 number;
exec dbms_job.submit(:job1,'syndataeverynight;',to_date('14-11-2008 02:35:37', 'dd-mm-yyyy hh24:mi:ss'),'SYSDATE+1');
exec dbms_job.run(:job1);


非常感谢,你帮我搞定了!

#14


谢谢12楼的兄弟,谢谢大家!

#1


 到底是执行存储过程出错,还是执行JOB出错?

#2


引用 1 楼 hdhai9451 的回复:
到底是执行存储过程出错,还是执行JOB出错?

JOB,存储过程没报错!谢谢

#3


执行JOB出错

#4


哪位高手帮帮忙啊!

#5


晕  你没看到你的过程里面有2个参数吗 
所以就 
报错“并非所有变量都已关联”

你看仔细点

#6


所以你的job无法创建的

#7


恩,谢谢你!
那两个参数是干什么的我不太清楚,麻烦指点一下!多谢!

#8


我也碰到一样的问题。应该是job=>这个地方出错,我猜测的。

#9


我把那两个参数去掉了,还是不行的!太郁闷了

#10


--JOB不是给你了?!

--在执行job之前先测试好你的存贮过程。

exec syndataeverynight;   --看测试结果是否正确?如可以的话,才使用JOB,否则重新调试。


begin
  sys.dbms_job.submit(job => :job,
                      what => syndataeverynight;',
                      next_date => to_date('15-11-2008', 'dd-mm-yyyy'),
                      interval => 'TRUNC(SYSDATE+1)');
  commit;
end;
/

#11


var job1 number;
exec dbms_job.submit(:job1,'syndataeverynight;',to_date('14-11-2008 02:35:37', 'dd-mm-yyyy hh24:mi:ss'),'SYSDATE+1');
exec dbms_job.run(:job1);

#12


 :job
变量没定义

怎么用???
var job1 number;
begin 
  sys.dbms_job.submit(job => :job1, 
                      what => syndataeverynight;', 
                      next_date => to_date('15-11-2008', 'dd-mm-yyyy'), 
                      interval => 'TRUNC(SYSDATE+1)'); 
  commit; 
end; 
/

#13


引用 11 楼 linzhangs 的回复:
SQL codevar job1 number;
exec dbms_job.submit(:job1,'syndataeverynight;',to_date('14-11-2008 02:35:37', 'dd-mm-yyyy hh24:mi:ss'),'SYSDATE+1');
exec dbms_job.run(:job1);


非常感谢,你帮我搞定了!

#14


谢谢12楼的兄弟,谢谢大家!