这是我将要使用dbms_job.submit的第一个时间。
以下代码不起作用:
declare
i_job_no BINARY_INTEGER;
begin
dbms_job.submit(JOB => i_job_no, what => 'declare x number; begin x := f_threads(''my_program'', '|| 6058883 ||' , '|| 2 || '); end;', next_date => sysdate);
dbms_output.put_line(i_job_no);
end;
但是执行立即可以正常工作。有人可以帮忙吗?!
> declare
i_job_no BINARY_INTEGER;
begin
execute immediate 'declare x number; begin x := f_threads(''my_program'', '|| 6058883 ||' , '|| 2 || '); end;';
end;
谢谢!
答案 0 :(得分:1)
这样你的pl / sql块就可以了:
declare
i_job_no BINARY_INTEGER;
begin
dbms_job.submit(JOB => i_job_no, what => 'declare x number; begin x := f_threads(''my_program'', '|| 6058883 ||' , '|| 2 || '); end;', next_date => sysdate);
dbms_output.put_line(i_job_no);
commit;
end;
您的代码中缺少commit
此致 Giova
答案 1 :(得分:0)
试试这个:
declare
i_job_no BINARY_INTEGER;
begin
dbms_job.submit(JOB => i_job_no, what => 'declare x number; begin x := f_threads(''my_program'', '|| 6058883 ||' , '|| 2 || '); end;', next_date => sysdate);
dbms_output.put_line(i_job_no);
commit;
dbms_job.run(i_job_no);
end;