У нас есть несколько приложений, которые обновляют определенную таблицу ms sql 2005 (веб-приложение asp.net, служба c # windows, анализатор электронной почты для инструмента автоматизации баз данных (использует sql + VB)) и хотели бы хранить информацию аудита в таблице , Например. ModifiedBy, ModifiedDate, где ModifiedBy = Имя приложения, обновляющего запись.
Мы также хотели бы заархивировать информацию на столе; когда мы обновляем определенную запись, сохраняем текущую запись в таблице myTable_Archive, отмечаем ее датой и соответствующим образом обновляем текущую запись в myTable.
Каков наилучший поддерживаемый и проверяемый подход к решению этой проблемы при минимальном воздействии на существующие приложения? Или кто-то может предложить лучший маршрут? Вызов процедуры хранения, общей библиотеки c # (с использованием nhibernate / ado.net и т. Д.) Или встроенной функции ms sql 2005, если таковая имеется, например.