#oracle #oracle-apex
Вопрос:
Я знаю, что мне не положено писать свои собственные заявления о вставке. Но я не смог найти, как это сделать со встроенной опцией Oracle Apex DML.
У меня есть страница с 2 элементами текстового поля:
P1_ITEM_01
P2_ITEM_02
У меня есть столик
create table mos.items (str varchar2(20));
Я хочу вставить значения выше 2 элементов в мои элементы таблицы, когда я отправлю страницу, как 2 строки.
q1. Как я могу зациклить действие вставки?
q2. Если мне нужно написать инструкцию insert, я думаю, что назову свои элементы определенным образом, а затем выберу их LIKE 'P1_ITEM%'
с помощью элементов APEX_APPLICATION_PAGE_ITEMS и создам цикл для каждого элемента. Является ли это правильным подходом?
Заранее большое вам спасибо.
Комментарии:
1. Почему бы вам не написать свои заявления о вставке? Встроенные процессы DML работают только для основных случаев использования, вам часто понадобится собственный пользовательский код DML.
2. честно говоря, большую часть времени я сдаюсь и начинаю вручную разрабатывать свои собственные процессы. но опытные разработчики apex здесь обычно советуют иначе. возможно, это просто мои неправильные толкования 🙂
Ответ №1:
Самый простой способ — с моей точки зрения — это создать свой собственный процесс, который будет
insert into items (str) values (:P1_ITEM_01);
insert into items (str) values (:P1_ITEM_02);
Все остальное, вероятно, возможно, но почти наверняка сложнее, чем должно быть.