Я не думаю, что вы можете объединить их просто потому, что FOR UPDATE работает до выполнения TSQL, тогда как AFTER UPDATE выполняется после завершения выполнения.
Производительность полностью зависит от качества вашегоcode.
Нет разницы в производительности, если один и тот же код находится в одном или двух триггерах.
За последние три года мне еще не приходилось сталкиваться с одной вещью, которую я не мог сделатьбез триггеров.Я лично держусь подальше от триггеров, насколько это возможно.Их так же легко настроить, как и любого другого оператора SQL, но они являются скрытыми факторами, стоящими за любой операцией редактирования данных, и поэтому я настороженно отношусь к ним.
Если вы хотите, чтобы ваш триггер работал длямассовое обновление, вы должны кодировать его для запуска таким образом, в противном случае вы просто запустите его для последней строки.Скажем так: для запуска триггера требуется 1 секунда.Если вы выполняете RBAR и запускаете обновление стоимостью 100 строк, ваш SQL-запрос не будет возвращаться до 1 мин 40 секунд.
Как ни странно, большинство разработчиков, которые я обнаружил, используют триггеры (за исключением INSTEAD-OF) также любят курсоры.
В общем, моя 2-пенсовая задача - как можно дольше держаться от них подальше.