ホームページ  >  記事  >  データベース  >  Oracle でプロセス例外情報を取得する方法

Oracle でプロセス例外情報を取得する方法

WBOY
WBOYオリジナル
2022-06-10 10:15:373118ブラウズ

Oracle では、「DBMS_OUTPUT」と「put_line」出力メソッドを使用して、ストアド プロシージャ例外情報を取得できます。構文は、「DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);」; 「put_line」です。 " print メソッド 改行出力に使用されます。sqlcode は例外番号を表し、sqlerrm は例外の詳細情報を表します。substr() メソッドと併用して例外情報をインターセプトできます。

Oracle でプロセス例外情報を取得する方法

このチュートリアルの動作環境: Windows 10 システム、Oracle バージョン 12c、Dell G3 コンピューター。

##Oracle でプロセス例外情報を取得する方法

##Oracle ストアド プロシージャの例外情報の表示

##以前にストアド プロシージャを作成したときの例外処理メソッドは次のとおりです。

この書き方では、ストアド プロシージャが例外をスローしたときに、どのような種類の例外がスローされたのかがわかりません (たとえば、列幅が十分に大きくなく、例外がスローされた場合など)情報 Oracle でプロセス例外情報を取得する方法

EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('sqlcode : ' ||sqlcode);
DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);
ROLLBACK;
END ...

sqlcode は例外番号、sqlerrm は例外の詳細情報 例外情報が多すぎる場合は、例外のセクションをインターセプトすることができます。たとえば、

DBMS_OUTPUT.put_line('sqlerrm : ' ||substr(sqlerrm,1,100));

は、最初の 100 文字をインターセプトして表示します。

推奨チュートリアル: 「

Oracle ビデオ チュートリアル

以上がOracle でプロセス例外情報を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。