0
テーブルsome_table
の行を行タイプ変数l_current
に選択しました。今、私はその変数のトラフフィールドを最初から最後まで、そしてゲートフィールド名と値を繰り返す必要があります。 以下に抜粋したコードで、私はplsqlで何をしたいのかをコメントアウトして書きましたが、どうやってそれを行うのかわかりません。事前にrowtype変数のトラフフィールドの反復
declare
l_current some_table%rowtype;
begin
for i in l_records.first .. l_records.last
loop
select *
into l_current
from some_table
where id = l_records(i).id;
--*******************
for each field in l_current
loop
a := field.name;
b := field.value;
end loop;
--*******************
end loop;
end;
ありがとう!
PL/SQL言語には、このタイプのイントロスペクション機能がありません。 –
[dbms_sql](https://docs.oracle.com/database/121/ARPLS/d_sql.htm)でカーソルを列に解析することができます。[anydata](http: //docs.oracle.com/database/121/ARPLS/t_anydat.htm)タイプですが、PL/SQLでは、コンパイル時にそのレコード・タイプを認識する必要があります。 –
私は自分でこれをやったことはありませんが、レコード操作PL/SQLコードがJava(またはOracleに接続できる他の言語)を使用してプログラムによって生成されているシナリオを見てきました。 – user272735