Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come tenere traccia del numero di modifiche avvenute in una colonna? T-SQL - SQL Server

Innanzitutto:se non è già implementato, è altamente consigliabile avere i dipendenti identificati da un identificatore permanente (es. NON EmployeeName) e così puoi tenere traccia di tutto.

Se desideri utilizzare un trigger, puoi utilizzare un trigger AFTER UPDATE e cercare una modifica al nome utilizzando if update(EmployeeName) .

Se è stato aggiornato, puoi aumentare contemporaneamente la colonna del conteggio nella tabella Dipendente. Usa il inserted tabella per identificare le voci che sono state aggiornate. (Il conteggio è essenziale? Se stai memorizzando una cronologia delle modifiche al nome, non credo sia necessario avere una colonna di conteggio:è un'informazione ridondante.)

Dovresti quindi aggiungere una riga alla tabella della cronologia dei nomi dei dipendenti che contiene i dettagli di questa modifica con il timestamp corrente.