plsql吧 关注:314贴子:684
  • 0回复贴,共1

oracle 存储过程里 exception 编译报错 plsql-00103

只看楼主收藏回复

存储过程里有 while loop .... end loop;
为了当出错时,不让存储过程退出,而记录错误,继续下个循环的执行,把
exception
when others then
v_errcode := sqlcode;
v_errtext := sqlerrm;
DBMS_OUTPUT.PUT_LINE('Error code ' || v_errcode || ': ' || v_errtext);
end;
加到了 end loop; 之前(不是存储过程的 end; 之前)
编译时,报下面的错误(但我之前有过类似的存储过程,不但编译成功了,而且一直在运行,难道是数据库参数影响的?):
Error: PLS-00103: 出现符号 "EXCEPTION"在需要下列之一时:
( begin case declare
end exit for goto if loop mod null pragma raise return select
update while with <an identifier>
<a double-quoted delimited-identifier> <a bind variable> <<
continue close current delete fetch lock insert open rollback
savepoint set sql execute commit forall merge pipe purge
Line: 46
Text: exception
Error: PLS-00103: 出现符号 "LOOP"在需要下列之一时:
;
Line: 52
Text: end loop;


IP属地:北京1楼2021-01-20 16:11回复