老大,带冒号开头的是变量,需要定义的,如下试试:
variable job number;
begin
sys.dbms_job.submit(job => :job,
what =>'monitor_sell_term();',
next_date => sysdate,
interval => 'sysdate+1');
commit;
end;
/
variable job number;
begin
sys.dbms_job.submit(job => :job,
what =>'monitor_sell_term();',
next_date => sysdate,
interval => 'sysdate+1');
commit;
end;
/
SQL> begin
2 sys.dbms_job.submit(job => :job,
3 what =>'monitor_sell_term();',
4 next_date => sysdate,
5 interval => 'sysdate+1');
6 commit;
7 end;
8 /begin
sys.dbms_job.submit(job => :job,
what =>'monitor_sell_term();',
next_date => sysdate,
interval => 'sysdate+1');
commit;
end;ORA-00600: internal error code, arguments: [15419], [severe error during PL/SQL execution], [], [], [], [], [], []
ORA-06544: PL/SQL: internal error, arguments: [77303], [], [], [], [], [], [], []
ORA-06553: PLS-801: internal error [77303]
job
---------
SQL> variable jobid number;
SQL> begin
2 sys.dbms_job.submit(job => :jobid,
3 what =>'monitor_sell_term();',
4 next_date => sysdate,
5 interval => 'sysdate+1');
6 commit;
7 end;
8 /
*
ERROR 位于第 1 行:
ORA-06550: 第 1 行, 第 93 列:
PLS-00201: 必须说明标识符 'MONITOR_SELL_TERM'
ORA-06550: 第 1 行, 第 93 列:
PL/SQL: Statement ignored
ORA-06512: 在"SYS.DBMS_JOB", line 79
ORA-06512: 在"SYS.DBMS_JOB", line 131
ORA-06512: 在line 2