Ако всеки потребител има акаунт, можете да използвате SYSTEM_USER
функция за определяне на текущия потребител. Въпреки това, ако всичките ви връзки минават през прокси акаунт, както е типично в повечето настройки на уеб сайтове, тогава трябва да разчитате на правилния потребителски идентификатор, който се предава на израза за актуализиране:
CREATE TRIGGER [update_history] ON MyTable
FOR UPDATE
AS
INSERT MyTable_History (id, BudgetNumber, PositionNumber, ModifiedDate, action, userId)
SELECT id, BudgetNumber, PositionNumber, GETDATE(), 'BEFORE UPDATE', inserted.userId
FROM MyTable
Join inserted
On inserted.id = MyTable.id
INSERT MyTable_History (id, BudgetNumber, PositionNumber, ModifiedDate, action, userId)
SELECT id, BudgetNumber, PositionNumber, GETDATE(), 'AFTER UPDATE', userId
FROM inserted