Форум: "Начинающим";
Текущий архив: 2009.12.20;
Скачать: [xml.tar.bz2];
ВнизТриггеры в Interbase. Найти похожие ветки
← →
Drowsy (2009-11-05 01:23) [0]Пара вопросов:
1. можно ли в триггере (в частности, в before insert) делать инсерт в другую таблицу?
2. если да, то как узнать успешно ли инсерт в ту таблицу прошёл?
← →
Sergey13 © (2009-11-05 08:19) [1]1. Да, можно.
2. Если commit прошел (только не в теле тригера!!!), значит вставилось. И почему может не пройти инсерт?
← →
Сергей М. © (2009-11-05 08:22) [2]2. Неуспешный INSERT вызовет исключительную ситуацию, которую можно перехватить в WHEN-предложении.
← →
Drowsy (2009-11-05 08:27) [3]Спасибо!
← →
Inovet © (2009-11-05 08:50) [4]> [1] Sergey13 © (05.11.09 08:19)
> И почему может не пройти инсерт?
Да мало ли причин: ПК повторяется или пустой, ФК неправильный, NOT NULL или ещё какая проверка сработала, ещё что-нибудь.
← →
Sergey13 © (2009-11-05 08:55) [5]> [4] Inovet © (05.11.09 08:50)
Я вообще-то спрашивал автора и вел к тому, что можно заранее отследить/проверить критичные места.
А теоретические причины отказов мне известны. 8-)
← →
Inovet © (2009-11-05 09:01) [6]> [5] Sergey13 © (05.11.09 08:55)
> > [4] Inovet © (05.11.09 08:50)
>
> Я вообще-то спрашивал автора
Ну я тоже вроде как автору подсказывал
и вел к тому, что можно заранее
> отследить/проверить критичные места.
А вот если не из своей программы а из например IBExpert, да и в своей можно запросто лажануться. Так что актуально.
← →
Sergey13 © (2009-11-05 09:07) [7]> [6] Inovet © (05.11.09 09:01)
> А вот если не из своей программы а из например IBExpert
Разговор вроде про тригер шел.
← →
Inovet © (2009-11-05 09:11) [8]> [7] Sergey13 © (05.11.09 09:07)
> > [6] Inovet © (05.11.09 09:01)
> > А вот если не из своей программы а из например IBExpert
>
> Разговор вроде про тригер шел.
А, понял - в триггере надо проверить.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.12.20;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c