カーソル変数の形式で値のリストをプロシージャから返せるようにする必要があります。ただし、リスト内の一部のフィールドは複数の値を持つことができます
たとえば、製品の説明フィールドに複数の説明行を含めることができます (別のテーブルから取得)。
レコード型内にネストされたテーブルを作成し、これをカーソルに関連付けることを考えていました。
TYPE N_TYPE IS TABLE OF VARCHAR2(350);
TYPE TYPE1 IS RECORD ( FIELD_1 VARCHAR2(100)
, FIELD_2 VARCHAR2(30)
, FIELD_3 N_TYPE);
TYPE T_CUR IS REF CURSOR RETURN TYPE1;
Procedure p_proc (p_1 IN VARCHAR2, p_2 OUT t_cur) is
-- processing input parameter and passing out a cursor to host application
end p_proc;
この手順では、テーブルに渡し、明示的なカーソルを使用しておよびp_1
にデータを取得する必要があります。Field_1
Field_2
次に、別のテーブルから、複数のレコードを に割り当てる必要がありますField_3
。
テーブルがレコード内のデータ型の一部である場合、ネストされたテーブルにデータを入力する方法を誰か教えてもらえますか? そして、データが入力されたらどうすれば確認できますか。そして、これを out パラメータのカーソル変数に割り当てる方法は?