Срабатывание тригера раз за транзакцию

ЧайникК
Дата: 31.05.2006 16:43:44
Такая вот возникла проблемма, что триггер срабатывает за транзакцию несколько раз, что логично триггер на инсерт и на апдейт, а в транзакции после инсерта происходит несколько раз апдейт - подскажите может есть какие задаваемые свойства триггера?
andrey_anonymous
Дата: 31.05.2006 16:45:32
Какие? Не срабатывать более одного раза?
Нет :)
Просто учитесь программировать и все будет хорошо.
alex-ls
Дата: 31.05.2006 16:50:48
а что Вы собственно в триггере-то делаете?
ЧайникК
Дата: 31.05.2006 16:58:58
В триггере исполняю данное мне ТЗ. :)
2Andrey - скажем так у меня немного щекотливая ситуация, програмировать я конечно учусь, но как в цельнометалической оболочке говорил сержант:
"ну так как рогов у тебя нет, значит выбор не велик".
y0gi
Дата: 31.05.2006 17:06:59
ЧайникК
В триггере исполняю данное мне ТЗ. :)

Че блин за манера на желание помочь отвечать таким макаром.

По теме: если есть возможность отредактировать сами триггеры, то можешь сделать временную таблицу с on commit delete rows, при первом редактировании фигачить туды запись, а при последующих при наличии записи сразу выходить из триггера. Хы-хы, какая задача, такое и решение ;)
Тот же чайник
Дата: 31.05.2006 17:22:18
y0gi
Че блин за манера на желание помочь отвечать таким макаром.


Швы заглаживает в когда-то кем-то написанной проге, внутри него все просто и безобидно никаких там мутаций и прочих страшных словечек, ну не буду же я сюда весь код пихать:), срабатывает на каждой строке от инсерта и апдейта. Вроде никого я не обидел.
(у меня условие ТЗ что триггер)
ЧайникК
Дата: 31.05.2006 17:25:56
Думал о временных таблицах, нашлось решение попроще и менее нагрузочное на базу с добавлением доп. условия в when.

Жаль что нет какого-нибудь ключего слова типа один раз за транзакцию:)
dmidek
Дата: 31.05.2006 17:26:42
Может быть, Вам поможет

Detecting the DML Operation That Fired a Trigger (INSERTING, UPDATING, and DELETING Predicates)


Но вообще то, тоже должен заметить, что тон выбран Вами неправильно
Stax.
Дата: 31.05.2006 20:29:58
ЧайникК
Думал о временных таблицах, нашлось решение попроще и менее нагрузочное на базу с добавлением доп. условия в when.

Жаль что нет какого-нибудь ключего слова типа один раз за транзакцию:)

Что Вы понимаете под "раз за транзакцию"?
......
stax