Форум программистов, компьютерный форум, киберфорум
Oracle
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/65: Рейтинг темы: голосов - 65, средняя оценка - 4.71
 Аватар для Gepar
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517

Insert into . returning

01.09.2015, 16:31. Показов 12366. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хочу получить в коллекцию id записей которые я только что заинсертил, но почему-то не получается это сделать и я не могу понять причину. Помогите пожалуйста сформировать запрос.
На сайте оракла написано что returning into работает с insert, update, delete
http://docs.oracle.com/cd/B193... clause.htm

Проверяю это на деле:
SQL
1
2
3
4
5
6
7
8
9
CREATE TABLE a(id INT, val varchar2(10));
CREATE TABLE b(id INT, val varchar2(10));
 
INSERT INTO a VALUES(1, 'a');
INSERT INTO a VALUES(2, 'a');
 
INSERT INTO b VALUES(1, 'a');
INSERT INTO b VALUES(2, 'a');
commit;
UPDATE
Oracle 11 SQL
1
2
3
4
5
6
7
8
DECLARE
    TYPE a_tt IS TABLE OF a.id%TYPE;
    a_tab a_tt;
BEGIN
    UPDATE a
    SET id = id
    RETURNING a.id BULK COLLECT INTO a_tab;
END;
PL/SQL procedure successfully completed.


DELETE
Oracle 11 SQL
1
2
3
4
5
6
7
DECLARE
    TYPE a_tt IS TABLE OF a.id%TYPE;
    a_tab a_tt;
BEGIN
    DELETE FROM a
    RETURNING a.id BULK COLLECT INTO a_tab;
END;
PL/SQL procedure successfully completed.



INSERT
Oracle 11 SQL
1
2
3
4
5
6
7
8
DECLARE
    TYPE a_tt IS TABLE OF a.id%TYPE;
    a_tab a_tt;
BEGIN
    INSERT INTO a
  SELECT * FROM b
    RETURNING a.id BULK COLLECT INTO a_tab;
END;
неверное завершение SQL-предложения

С одной записью если использовать конструкцию insert into ... values всё работает нормально
Oracle 11 SQL
1
2
3
4
5
6
7
DECLARE
    a_id a.id%TYPE;
BEGIN
    INSERT INTO a
    VALUES (1, 2)
    RETURNING a.id INTO a_id;
END;
PL/SQL procedure successfully completed.

Оракл не умеет collect into с insert select или что?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.09.2015, 16:31
Ответы с готовыми решениями:

PL SQL DEVELOPER. INSERT с RETURNING
Есть у меня следующий код. Но при запуске он не работает. Не знаю в чем дело. По всем ссылкам, которые выдает Гугл конструкция такая же....

Предложение Returning
База Oracle. Возник такой вопрос. Я в TUpdateSql вешаю запрос: insert into NPATS_GTP (NAME, NPATSID) values (:NAME,...

Использование Returning в Rule
Не понимаю, что писать в разделе Returning при написании правила. Мне надо возвращать id новой записи (id_user) или можно новую запись...

1
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
01.09.2015, 16:42
Лучший ответ Сообщение было отмечено Gepar как решение

Решение

Цитата Сообщение от Gepar Посмотреть сообщение
Оракл не умеет collect into с insert select или что
Нет
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.09.2015, 16:42
Помогаю со студенческими работами здесь

Read returning value of main() from terminal
How i can read main() returning value from terminal(tty) ? int main(){ return 0; } int main(){ return 1; } How...

GCC returning reference to temporary
Например вот так: int func2() { int input; cin >> input; return input; } int&& func1() {

IBQuery – при returning не найдет параметр
Доброе время суток, форумчане Вот простой запрос на вставку, с возвратом "ID" var q: integer; begin IBQuery1.Close; ...

Returning Visitor (вовзраты) - 48% с AdWords - это нормально?
Всем доброго времени суток, с прошедшими и наступающими праздниками. Заинтересовал вот такой вопрос - адекватная ли цифра Returning...

Предупреждение: returning address of local variable or temporary
Есть код программы для кодирования в base64 и обратно, не самый лучший код, но все же. И вот выскакивает два предупреждения на 2 return в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru