写了一个sql文件
大致如下:
SET ECHO ON
SET TIMING ON
SET SERVEROUTPUT ON
WHENEVER SQLERROR EXIT SQL.SQLCODE
WHENEVER OSERROR EXIT 9
BEGIN
EXECUTE 调用的存储过程;
其他DB操作;
COMMIT;
END;
/
EXIT
就报错,但是将主要代码部分改为下面以后就正常了。为什么呢。
*调用的存储过程单独执行是没问题的。
EXECUTE 调用的存储过程;
BEGIN
其他DB操作;
COMMIT;
END;
/
EXIT
------解决方案--------------------
如果你在pl/sql语句块中执行存储过程,不需要execute命令
begin
proc_name;
end
如果在pl/sql developer的command window或者sql*plus中执行过程则需
execute proc_name;