jaka jest poprawna składnia do tworzenia wyzwalacza bazy danych dla wstawiania, modyfikowania i usuwania

Mam coś, co wydaje się być podstawowym scenariuszem wyzwalacza db w serwerze SQL i mam problem.

mam stółUżytkownicy (id, imię, telefon, itp.) i mam tabeleUżytkownicyHistoria (id, user_id akcja, pola, znacznik czasu)

Chcę, aby wyzwalacz bazy danych w dowolnym momencie wstawiał, aktualizował lub usuwał do użytkowników, chcę utworzyć nowy rekord w UsersHistory z identyfikatorem użytkownika i wykonaną czynnością (wstaw nowe, zaktualizowane pola, usunięty identyfikator. Zasadniczo tabela dziennika kontroli).

tak daleko mam, ale nie wiem, jak:

Uzyskaj identyfikator na modyfikuj i usuwa, a takżeJak uzyskać listę zmienionych pól i zatwierdzoną akcję (wstaw, usuń, zaktualizuj)
CREATE TRIGGER Update_Users_History 
   ON  Users
   AFTER INSERT,DELETE,UPDATE
 AS 
 BEGIN
-- Insert statements for trigger here

insert into UsersHistory (user_id, [action], [fields], timestamp)
select  max(id) as user_id, {action ??},{fields??}  getdate() from Users)

END
GO

jakieś sugestie?

questionAnswers(2)

yourAnswerToTheQuestion