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

Откуда: Ульяновск
Сообщений: 204
Суть проблеммы: Есть таблица в триггере которой (перед вставкой) происходит запись данных в другую таблицу. И происходит следующее: В первую таблицу вставляются данные которые нарушают ограничение целостности (происходит дублирование) и по всей видимости откат... но во второй таблице данные остались:( а мне этого не надо!
23 ноя 06, 13:26    [3441022]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Бабичев Сергей
Member

Откуда:
Сообщений: 2498
Wishmaster
как такое может быть? Не откатывается транзакция.
Автономная транзакция в триггере?
23 ноя 06, 13:32    [3441081]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
а ты это делай в триггере не before insert, а after insert...
23 ноя 06, 13:32    [3441086]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Wishmaster
Member

Откуда: Ульяновск
Сообщений: 204
Нет конечно. Просто тупой оператор инсерта.
23 ноя 06, 13:33    [3441095]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Jannny
Member

Откуда: Спб
Сообщений: 6424
"ищите женщину", то бишь ищите commit :)
23 ноя 06, 13:34    [3441105]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Elic
Member

Откуда:
Сообщений: 29989
Wishmaster
Суть проблеммы: Есть таблица в триггере которой (перед вставкой) происходит запись данных в другую таблицу. И происходит следующее: В первую таблицу вставляются данные которые нарушают ограничение целостности (происходит дублирование) и по всей видимости откат... но во второй таблице данные остались:( а мне этого не надо!
Если вставка во вторую была не в автономной транзакции, то должно откатиться всё.
Используй after-триггер.
23 ноя 06, 13:34    [3441107]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Wishmaster
Member

Откуда: Ульяновск
Сообщений: 204
Вот по поводу триггера Befor и After >> если я понимаю транзакция то все равно должна откатиться.... или есть какие то варианты?
23 ноя 06, 13:34    [3441109]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Wishmaster
Member

Откуда: Ульяновск
Сообщений: 204
какие commit'ы в триггере? побойтесь Бога!
23 ноя 06, 13:35    [3441120]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Elic
Member

Откуда:
Сообщений: 29989
Jannny
ищите commit :)
Сперва придётся найти автономную транзакцию :)
23 ноя 06, 13:35    [3441125]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Киевлянин
Member

Откуда:
Сообщений: 54
Wishmaster
... (происходит дублирование) и по всей видимости откат... но


А что значит "по всей видимости"? После того, как вываливается эксепшн, сделайте rollback руками. Вставленная в триггере строка останется?
23 ноя 06, 13:42    [3441199]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Wishmaster
Member

Откуда: Ульяновск
Сообщений: 204
Я бы поставил да дело в том что вставку осуществляет одно приложение... и никаких эксепшенов оно не валит. Но записи то не вставляются вот я и предполагаю что происходит откат:)
23 ноя 06, 14:01    [3441408]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Jannny
Member

Откуда: Спб
Сообщений: 6424
Wishmaster
Я бы поставил да дело в том что вставку осуществляет одно приложение... и никаких эксепшенов оно не валит. Но записи то не вставляются вот я и предполагаю что происходит откат:)
Может проще посмотреть, что делает приложение? А то как-то странно - Вы предполагаете, что оно вставляет именно такие данные, предполагаете, что случается exception....
23 ноя 06, 14:07    [3441476]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
Aliona
Member

Откуда: Питер
Сообщений: 4023
Jannny
"ищите женщину", то бишь ищите commit :)

или команду DDL
23 ноя 06, 18:34    [3443683]     Ответить | Цитировать Сообщить модератору
 Re: как такое может быть? Не откатывается транзакция.  [new]
alex-ls
Member

Откуда: Иркутская обл - Пенза - Москва
Сообщений: 6914
Киевлянин
После того, как вываливается эксепшн, сделайте rollback руками.

прикольно... ms sql изучали?
23 ноя 06, 18:36    [3443697]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить