sql >> データベース >  >> RDS >> Oracle

x個の入力パラメータとx個のパラメータの入出力を組み合わせたPL/SQLプロシージャの記述方法

    私には、まるで

    のように見えます
    • 手順を「変換」する必要があります STUDENT_IDのすべての部分を計算します 関数
      • なぜですか?なぜなら、現在のように、プロシージャは、計算したものを返すことができるように、OUTパラメータを持っている必要があるからです。そしてそれは機能に他なりません
    • それぞれに情報を渡す
    • 結果を得る
    • 連結 結果は最終的なSTUDENT_IDになります 値

    このようなもの:

    function f_name (par_name in varchar2) return varchar2 is
      retval varchar2(20);
    begin
      retval := whatever code you have to find it
      return retval;
    end;
    
    function f_surname (par_surname in varchar2) return varchar2 is
      retval varchar2(20);
    begin
      retval := whatever code you have to find it
      return retval;
    end;
    
    etc.
    
    procedure student_id (par_surname in varchar2, par_name in varchar2, ...)
    is
      l_student_id varchar2(30);
    begin
      l_student_id := f_name   (par_name)    ||'-'||
                      f_surname(par_surname) ||'-'||
                      f_gender (par_gender)  ||'-'||
                      ...
                      f_state  (par_state);
                      
      dbms_output.put_line('Student_ID is: ' || l_student_id);
    end;  
    

    最後に、これらの関数とプロシージャはすべて同じ問題を処理するため、すべてをパッケージに入れると便利です。 。




    1. アクティブレコードはすべてのJSONフィールドを更新します

    2. なぜORA-01722(無効な番号)を取得するのですか?

    3. Windows IISサーバーにmysqliをインストールする方法は?

    4. MySQLクエリ結果に連番を表示する方法