我有一個存儲過程,它有一個OUT參數,表示一個錯誤代碼。 如果錯誤代碼不爲0,那麼我提出一個錯誤SQL * Plus:強制它返回一個錯誤代碼
DECLARE
BEGIN
foo (err_code);
IF (err_code <> 0) THEN
raise_application_error(...);
END;
到目前爲止好,但這裏是我的問題。
這段代碼(如上所示)由sqlplus執行,它由shell腳本調用,它應該以0 /不爲0(作爲sql腳本)退出。
#shell script
sqlplus ... @myscript
return $?
當raise_application_error執行時,控制權返回到sqlplus。
sql>
我想要什麼,是退出回外殼,沒有返回的sqlplus上$ 0的方式嗎?
有什麼想法? 在此先感謝。
謝謝,正是我需要的。 – Tom 2010-02-12 21:08:36
我們在'sqlerror退出sql.sqlcode'的時候做'',它將更多的信息傳回給腳本的調用者。如果SQLPlus跳過某種操作系統級別的錯誤,我們也會'每當出現oserror exit 1'。 – 2011-11-15 18:09:25