PL/SQL を使い始めて、書き方を学んでいますprocedures
がexceptions
、エラーを表示する方法がわかりません。手順は単純なもので、以下に示すように単純な計算のみを行うことになっています。
create or replace
procedure get_simple_math
(n_num1 in number,
n_num2 in number,
n_answer out number,
n_err_code out number,
n_err_msg out varchar2)
as
begin
n_answer := (n_num1 / n_num2);
dbms_output.put_line('Answer is '||n_answer);
n_err_code := 0;
exception
when others
then
n_err_code := SQLCODE;
n_err_msg := 'Error in get_simple_math '||SQLERRM;
raise_application_error (-20002,n_err_msg);
end get_simple_math;
ご覧のとおり、何も派手ではありませんが、私は一生block
実行できません。
set serveroutput on
declare
n_answer number := 0;
n_err_code number;
n_err_msg varchar2;
begin
get_simple_math(10,5,n_answer);
end;
に設定されている変数を宣言する必要があると想定しているout
ため、そこに存在します。また、次のように実行に追加しようとしましたprocedure
:
get_simple_math(10,5,n_answer,n_err_code,n_err_msg);
しかし、それはうまくいかないようだったので、この問題を解決するための助けを探しています. 前もって感謝します。