Hello, sasha!
sasha wrote:
очень трудно понять, почему new не работает в after, и работает в before?
Не, хоть убейте. Для таблиц понятно, для представлений нет. Без операции
по умолчанию или триггера INSTEAD OF я не понимаю что такое BEFORE и
AFTER для представления. Никак не понимаю.
текущий механизм триггеров таблиц действует для view.
Поэтому нет никаких непоняток. триггеры, превращающие
необновляемое view в обновляемое всегда были только before.
after для таких view - это просто дополнительное действие.
view это запрос. в отличие от таблицы. Поэтому перекрывая ОБНОВЛЯЕМОЕ
view триггером ты перекрываешь операцию обновления полностью.
Это удобно и замечательно.
Это вы факт констатируете. А чем не удобно когда есть три вида
триггеров: BEFORE / INSTEAD OF / AFTER, каждыйй из которых делает то что
ему положено делать?
ну нету триггеров instead of. А триггеры before/after существуют
ДАВНО. Если ты прицепился к реализации, то где ты был в 19... каком
то там году, когда выходил IB 4.0, и почему не сказал Borland-у о
том что их реализация кривая?
нынешнее поведение на 100% соответствует документации. Аминь.
Так если чё в документации описано, так что, нельзя обсудить/поменять?
я еще раз объясняю. что фактически все это работает именно так
уже примерно 15 лет, как минимум. Никто менять здесь ничего не будет.
instead of МОЖНО сделать, например как синоним к before insert для view.
только вопрос - зачем? Только потому что некий Саша запутался,
и вместо before стал писать after, причем стал писать там то, что ЗАПРЕЩЕНО?
--
Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34