質問です。
shellからSqlplus→ストアド呼び出しを行います。
まず、ソースをご覧下さい。
VARIABLEret NUMBER;
DECLARE
cnvtStatNUMBER;
BEGIN
cnvtStat := 0;
cnvtStat := PK_TEST.TEST(A);
IF ( cnvtStat >= 0 ) THEN
:ret := 0;
ELSE
:ret := 9;
END IF;
EXCEPTION
WHEN OTHERS THEN
:ret := 9;
END;
となっています。
困っていることは
ストアドのヘッダ部がコンパイルエラーの場合、
EXCEPTIONに引っかかってくれないのです。
本体のコンパイルエラーはEXCEPTIONに引っかかります。
このままでは、ヘッダがコンパイルエラーで
ストアド処理が行われないのに、
呼び出し側では気づかず処理を続行してしまいます。
どのようにエラーハンドリングすればよいのか
皆さんお手数かけますが、アドバイスよろしくお願いします。
No.1ベストアンサー
- 回答日時:
どのようなエラーハンドリングを望んでいるのか、理解できませんが、
SQL*PLUSに流し込むスクリプトの先頭で
WHENEVER OSERROR EXIT 2
WHENEVER SQLERROR EXIT 1
という2行を書いておけば、大抵のエラーは、SQL*PLUSの終了コードで
SHELL側に引き渡されます。
当然ながら、スクリプトが無かったとかの場合だと、"WHENEVER ~"を食べないので
まともな処理は出来ませんが、スクリプトさえあれば、それなりだと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) VBAでファイルを開くプログラムがエラーです 2 2023/02/21 16:56
- Visual Basic(VBA) 数字が「0」の列を削除するため、下記のコードを実行しましたが、コンパイルエラーSubまたはFunct 3 2022/12/04 00:00
- Visual Basic(VBA) 【VBA】Excelで罫線を引きたい 3 2022/07/14 12:04
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 【VBA】印刷マクロのループ処理が反映されません 3 2022/08/09 02:15
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ORA-01013のエラーについて経験...
-
PL/SQLのコンパイルエラーにつ...
-
ORA-01843: 指定した月が無効で...
-
はじめまして!
-
「ORA-00907: 右カッコがありま...
-
トリガーのエラー
-
PL/SQL PLS-00103エラーについて
-
データベースのカラムの型がCHA...
-
ストアドファンクションの実行
-
PL/SQLによるCREATE TABLE後のI...
-
シェルスクリプトでオラクルの...
-
DATABSE LINKについて
-
インポート時のエラーについて
-
PLSQLエラー
-
PCC-S-02201エラーの対処を教え...
-
Object variable or With Block...
-
ORA-1555
-
HAVING句でのBETWEEN演算子
-
PL/SQLでPLS-00201のエラー
-
エラーコード取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ORA-01013のエラーについて経験...
-
CASE文のエラーについて
-
PL/SQLのコンパイルエラーにつ...
-
「ORA-00907: 右カッコがありま...
-
PL/SQL PLS-00103エラーについて
-
はじめまして!
-
シェルスクリプトでオラクルの...
-
PCC-S-02201エラーの対処を教え...
-
ストアドファンクションの実行
-
HAVING句でのBETWEEN演算子
-
ORA-01843: 指定した月が無効で...
-
ORA-06502のエラー
-
DATABSE LINKについて
-
PL/SQLでPLS-00201のエラー
-
sqlのエラーハンドリングについ...
-
PL/SQLによるCREATE TABLE後のI...
-
ACCESSでパススルークエリにパ...
-
SQLLOADER
-
PL-SQLでORA-01013エラー
-
無効なSQL文の具体例を教えてく...
おすすめ情報