私はVARRAYを持っており、ループを使用してこのVARRAYに要素を追加したいと考えています。これはこれまで私が試したことです。上記のコードループを使用してVARRAYに値を追加する方法
DECLARE
TYPE code_array_ IS VARRAY(26) OF VARCHAR2(6);
codes_ code_array_;
BEGIN
FOR i IN 1..26 LOOP
codes_(i) := dbms_random.string('U',6);
END LOOP;
END;
は私にエラーを与える
は、 "ORA-06531:初期化されていないコレクションへの参照"
ネストした表ではなく、VARRAYが必要ですか?その26制限は圧倒的に有用なので、ネストしたテーブルで得られる機能を失うことはありませんか? –
@William_Robertson VArrayは要素の順序を維持しますが、ネストした表と連想配列は保持しません。要素の順序が必要なアプリケーションでは、VARRAYが唯一のオプションです。 – JeramieH