declare
    l_id combo_foods.id%type;
begin
    /* 今まで登録されている好みの食べ物を削除する。 */
    delete from combo_favorites where person_name = :APP_USER;
    /* 表COMBO_FOODSに登録済みの食べ物のうちで選択された好みを保存する。 */
    insert into combo_favorites(person_name, food_id)
        select :APP_USER, column_value from apex_string.split(:P6_FAVORITES,':');
    /* 手動入力の食べ物は表COMBO_FOODSに登録したのち、COMBO_FAVORITESに登録する。 */
    for c in (
        select column_value from apex_string.split(:P6_MANUAL_VALUES,':')
    )
    loop
        /* 表COMBO_FOODSに登録する。 */
        insert into combo_foods(name) values(c.column_value) returning id into l_id;
        /* 表COMBO_FAVORITESに登録する。 */
        insert into combo_favorites(person_name, food_id) values(:APP_USER, l_id);
    end loop;
end;