【发布时间】:2011-12-26 03:11:12
【问题描述】:
我使用“WHENEVER SQLERROR EXIT SQL.SQLCODE ROLLBACK;”在我的 plsql 脚本中使用它们在 shell 脚本中。这工作正常:
echo exit | sqlplus user/pass@XE @normal.sql && echo "boo"
执行脚本并打印“boo” 这也很好用:
echo exit | sqlplus user/pass@XE @bad.sql && echo "boo"
“嘘”没有打印出来。
但万一不好是:
WHENEVER SQLERROR EXIT SQL.SQLCODE ROLLBACK;
create or replace
PACKAGE TESTING
IS
function boo (co_id number) return varchar2;
END;
/
create or replace
PACKAGE BODY TESTING
is
end;
这显然是错误的 - 没有返回错误代码并且打印了“boo”。 如何从 sqlplus 脚本返回 plsqsl 编译错误代码?
【问题讨论】:
标签: oracle scripting plsql sqlplus