ORACLE 定时执行存储过程,出现错误,代码如下
create or replace procedure abssf as
begin
INSERT
INTO sc_jc_rm
(
sc_jc_rm.bl_id,
sc_jc_rm.bl_name,
sc_jc_rm.fl_id,
sc_jc_rm.rm_id,
sc_jc_rm.rm_name,
sc_jc_rm.area_rm,
sc_jc_rm.rm_cat,
sc_jc_rm.rm_type,
sc_jc_rm.dv_id
)
SELECT rm.bl_id,
bl.name,
rm.fl_id,
rm.rm_id,
rm.name AS abc,
bl.area_rm,
rm.rm_cat,
rm.rm_type,
rm.dv_id
FROM rm,
bl
WHERE rm.bl_id = bl.bl_id ;
end
variable job1 number;
begin
dbms_job.submit(:job1,'abssf;',sysdate,'sysdate+1');
end;
错误报告如下:
ORA-06550: 第 1 行, 第 93 列:
PLS-00905: 对象 AFM.ABSSF 无效
ORA-06550: 第 1 行, 第 93 列:
PL/SQL: Statement ignored
ORA-06512: 在 "SYS.DBMS_JOB", line 82
ORA-06512: 在 "SYS.DBMS_JOB", line 139
ORA-06512: 在 line 3
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
------解决方案--------------------
select * from user_jobs where what = 'abssf;'
试下这个表