ORACLE - ОБНОВЛЕНИЕ с использованием INSERT seq внутри FORALL - PullRequest
0 голосов
/ 03 мая 2018

У меня есть ORACLE DB. Я пытаюсь перебрать массив с помощью FORALL и внутри этого FORALL, чтобы вставить в таблицу с TABLE.NEXTVAL и после этого обновить внешний ключ другой таблицы с новым TABLE.CURVAL, но я знаю, что это невозможно.

Как я могу это реализовать?

FORALL I IN 1 ..5
insert into tbl
    values (tbl_seq.NEXTVAL)
update foo set tbl_fk = tbl_seq.CURVAL where foo.id=I

Спасибо

1 Ответ

0 голосов
/ 03 мая 2018

@ Dvir, Вы не можете сделать это, потому что здесь только первый оператор INSERT является частью FORALL. И, следовательно, вы можете получить только последнее значение последовательности из CURRVAL. Я хотел бы предложить вам использовать цикл FOR вместо FORALL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...