Oracle Apex — Удалить участника из коллекции

#oracle #oracle-apex #oracle-apex-19.1 #oracle-apex-20.2 #oracle-apex-20.1

Вопрос:

Можно ли удалить из коллекции apex, где C003 = 31

введите описание изображения здесь

Ответ №1:

Процедура DELETE_MEMBERS-это то, что вы ищете. Чтобы узнать больше об этом, пожалуйста, ознакомьтесь с официальной документацией Oracle.

Вы можете сделать что-то вроде:

 APEX_COLLECTION.DELETE_MEMBERS 
(
    p_collection_name => 'collection_name',
    p_attr_number     => 3,
    p_attr_value      => '31'
);

 

Или используйте идентификатор последовательности.

 DECLARE

    CURSOR c_temp IS
    SELECT
        seq_id
    FROM APEX_COLLECTIONS
    WHERE collection_name = 'collection_name'
        AND c003 = '31';

BEGIN
    FOR r_temp IN c_temp LOOP
        apex_collection.delete_member
        (
            p_collection_name => 'collection_name',
            p_seq => r_temp.seq_id
        );
    END LOOP;
END;