sql для обнаружения полей, измененных в триггере обновления (sql server 2005)? - PullRequest
3 голосов
/ 12 января 2009

В SQL Server 2005 внутри триггера обновления есть способ найти список полей \ столбцов, которые изменены исходным запросом на обновление.

У меня есть таблица с 150 столбцами, и внутри триггера необходимо знать, обновлялось ТОЛЬКО одно конкретное поле или нет (и никакое другое поле было изменено)

Я могу написать длинный sql для сравнения 150 столбцов, но он будет подвержен ошибкам и будет выглядеть глупо!

Любой достойный способ обойти эту проблему. Я надеюсь, что какой-нибудь API sql2005 придет мне на помощь.

1 Ответ

10 голосов
/ 12 января 2009

Взгляните на COLUMNS_UPDATED - это немного больно, но вы должны быть в состоянии работать с ним довольно легко для вашего требования Об этом есть приличная статья на SQL Server Central .

...