我有一个存储过程 proc1
create or replace procedure proc1
(recode out number,
remsg out varchar2)
AS
BEGIN
---执行SQL
commit;
recode =0;
remsg = 'success';
exception
rollback;
recode =1;
remsg = 'fail';
end proc1;
存储过程编译通过
然后 想用job 定时调用这个存储过程
BEGIN
SYS.DBMS_JOB.REMOVE(3);
COMMIT;
END;
/
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT
( job => X
,what => 'proc1(recode /* number*/,
remsg /*varchar2*/);'
,next_date => to_date('26-08-2009 06:00:00','dd/mm/yyyy hh24:mi:ss')
,interval => 'trunc(sysdate + 7) + 6/24'
,no_parse => FALSE
);
执行报错,说 无法识别 recode,
我想问一下各位高手 如何 写 调用 有输出 存储过程的 job?
create or replace procedure proc1
(recode out number,
remsg out varchar2)
AS
BEGIN
---执行SQL
commit;
recode =0;
remsg = 'success';
exception
rollback;
recode =1;
remsg = 'fail';
end proc1;
存储过程编译通过
然后 想用job 定时调用这个存储过程
BEGIN
SYS.DBMS_JOB.REMOVE(3);
COMMIT;
END;
/
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT
( job => X
,what => 'proc1(recode /* number*/,
remsg /*varchar2*/);'
,next_date => to_date('26-08-2009 06:00:00','dd/mm/yyyy hh24:mi:ss')
,interval => 'trunc(sysdate + 7) + 6/24'
,no_parse => FALSE
);
执行报错,说 无法识别 recode,
我想问一下各位高手 如何 写 调用 有输出 存储过程的 job?
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT(job => X,
what => 'declare
recode number;
remsg varchar2(100);
begin
proc1(recode,remsg);
end;',
next_date => to_date('26-08-2009 06:00:00',
'dd/mm/yyyy hh24:mi:ss'),
interval => 'trunc(sysdate + 7) + 6/24',
no_parse => FALSE);
commit;
end;