7.24 ADD_MEMBERSプロシージャ

このプロシージャを使用して、コレクションにメンバーの配列を追加します。指定されたコレクションが、カレント・アプリケーションIDの同じセッション内にカレント・ユーザー用として存在しないと、エラーが発生します。新しいメンバーの追加では、欠落したものは使用されないため、メンバーの順序番号が1,2,5,8である既存のコレクションの場合、新しいメンバーは順序番号9として追加されます。p_c001 PL/SQL表内の要素数は、すべてのPL/SQL表内のアイテムの合計数として使用されます。たとえば、p_c001.countが2で、p_c002.countが10の場合、2つのメンバーのみが追加されます。p_c001がnullの場合は、アプリケーション・エラーが発生します。

構文

APEX_COLLECTION.ADD_MEMBERS (
    p_collection_name IN VARCHAR2,
    p_c001 IN APEX_APPLICATION_GLOBAL.VC_ARR2,
    p_c002 IN APEX_APPLICATION_GLOBAL.VC_ARR2 default empty_vc_arr,
    p_c003 IN APEX_APPLICATION_GLOBAL.VC_ARR2 default empty_vc_arr,
    ...
    p_c050 IN APEX_APPLICATION_GLOBAL.VC_ARR2 default empty_vc_arr,
    p_n001 IN APEX_APPLICATION_GLOBAL.N_ARR default empty_n_arr,
    p_n002 IN APEX_APPLICATION_GLOBAL.N_ARR default empty_n_arr,
    p_n003 IN APEX_APPLICATION_GLOBAL.N_ARR default empty_n_arr,
    p_n004 IN APEX_APPLICATION_GLOBAL.N_ARR default empty_n_arr,
    p_n005 IN APEX_APPLICATION_GLOBAL.N_ARR default empty_n_arr,
    p_d001 IN APEX_APPLICATION_GLOBAL.D_ARR default empty_d_arr,
    p_d002 IN APEX_APPLICATION_GLOBAL.D_ARR default empty_d_arr,
    p_d003 IN APEX_APPLICATION_GLOBAL.D_ARR default empty_d_arr,
    p_d004 IN APEX_APPLICATION_GLOBAL.D_ARR default empty_d_arr,
    p_d005 IN APEX_APPLICATION_GLOBAL.D_ARR default empty_d_arr,
    p_generate_md5 IN VARCHAR2 default 'NO');

パラメータ

注意:

4,000文字を超える文字属性は、4,000文字に切り捨てられます。また、追加されるメンバーの数は、1番目の配列内の要素の数に基づきます。

表7-3 ADD_MEMBERSプロシージャのパラメータ

パラメータ 説明

p_collection_name

既存のコレクションの名前。最大長は255バイトです。コレクション名は大/小文字が区別されず、大文字に変換されます。

p_c001からp_c050

追加する文字属性値の配列。

p_n001からp_n005

追加する数値属性値の配列。

p_d001からp_d005

追加する日付属性値の配列。

p_generate_md5

有効な値にはYESNOが含まれます。YESの場合、コレクション・メンバーのデータのメッセージ・ダイジェストが計算されます。このパラメータは、コレクション・メンバーのMD5を別のメンバーと比較する場合か、そのメンバーが変更されたかどうかを確認する場合に使用します。

次の例は、2つの新しいメンバーをEMPLOYEE表に追加する方法を示しています。

Begin
    APEX_COLLECTION.ADD_MEMBERS(
        p_collection_name => 'EMPLOYEE',
        p_c001 => l_arr1,
        p_c002 => 1_arr2);
End;