Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Получить обновленнуй строку из команды UPDATE  [new]
Андрей Тупицын
Member

Откуда:
Сообщений: 2
В MS SQL 2005 есть замечательная опция OUTPUT, позволяющая получить обновленную строку непосредственно из команды UPDATE:

update t1 set fld1=fld1+1 output inserted.* into #t1
Таким образом во временной таблице #t1 получим то, что записали в таблицу t1.

Вопрос: как это сделать в Oracle ?

Можно, конечно, написать триггер, но этот вариант не подходит.
Также можно считать обновленную запись select'ом, но update+select прийдется выполнять в транзакции чтобы получить гарантию того, что запись не изменилась между командами update и select.
13 окт 06, 19:53    [3261071]     Ответить | Цитировать Сообщить модератору
 Re: Получить обновленнуй строку из команды UPDATE  [new]
Elic
Member

Откуда:
Сообщений: 29988
RTFM returning clause (FAQ)
А всё "вражеское" лучше сразу забыть :)
13 окт 06, 19:59    [3261083]     Ответить | Цитировать Сообщить модератору
 Re: Получить обновленнуй строку из команды UPDATE  [new]
Акаций Черемухович
Guest
update ... returning ...
13 окт 06, 20:00    [3261085]     Ответить | Цитировать Сообщить модератору
 Re: Получить обновленнуй строку из команды UPDATE  [new]
Андрей Тупицын
Member

Откуда:
Сообщений: 2
Спасибо!
14 окт 06, 14:42    [3262015]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить