Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 commit = rollback!!! (SQL Server2000 и Oracle)  [new]
Vladsed
Member

Откуда: Moscow
Сообщений: 20
После миграции приложения с SQL Server2000 на Oracle (8i) в одном из триггеров остался вызов процедуры, в которой при определенных условиях вызывался commit. В общем случае в Oracle, как известно, операции с транзакциями в триггерах запрещены (не рассматривая специфические случаи типа автономных транзакций...), но компилирует при этом без всяких проблем. Ситуация усугублялась тем, что в блоке обработки исключиельных ситуаций на верхнем уровне именно это исключение перехватывалось "молча" (when others) и выполнялся rollback. Работало потрясающе, но иногда вместо ожидаемого commit в транзакции получался rollback!!! Докапаться было не очевидно, тем более эти случаи были очень редки...
Вывод:
написав commit в одной БД можете получить rollback в другой - и все в соответствии со стандартом ANSI...Песенка ослика-ораклиста
1 авг 03, 17:04    [285565]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить