SQL Server 2000: C'è un modo per dire quando un record è stato modificato l'ultima volta?

voti
7

La tabella non dispone di un ultimo campo aggiornato e ho bisogno di sapere quando i dati esistenti è stato aggiornato. Così l'aggiunta di un ultimo campo aggiornamento non aiuterà (per quanto ne so).

È pubblicato 05/08/2008 alle 21:33
fonte dall'utente
In altre lingue...                            


5 risposte

voti
4

SQL Server 2000 non tenere traccia di queste informazioni per voi.

Ci possono essere creative / modi sfocate di indovinare ciò che questa data è stata a seconda del modello di database. Ma, se si parla di 1 tavolo con alcuna relazione con altri dati, allora siete fuori di fortuna.

Risposto il 05/08/2008 a 21:58
fonte dall'utente

voti
1

Si potrebbe provare un visualizzatore di log; questo consente fondamentalmente solo si guardano le transazioni nel log delle transazioni, così si dovrebbe essere in grado di trovare la dichiarazione che ha aggiornato la riga in questione. Io non consiglierei questo come una strategia di auditing a livello di produzione, ma ho trovato ad essere utile in un pizzico.

Ecco quello che ho usato; è gratuito e (solo) funziona w / SQL Server 2000.

http://www.red-gate.com/products/SQL_Log_Rescue/index.htm

Risposto il 02/09/2008 a 06:43
fonte dall'utente

voti
1

Non è possibile verificare la presenza di modifiche senza una sorta di meccanismo di controllo. Si sta cercando di estrarre le informazioni che non Hà stati raccolti. Se avete solo bisogno di sapere quando un record è stato aggiunto o modificato, l'aggiunta di un campo datetime che viene aggiornato tramite un trigger quando il record viene aggiornato sarebbe la scelta più semplice.

Se hai bisogno anche di tenere traccia quando un record è stato cancellato, quindi ti consigliamo di utilizzare una tabella di controllo e popolare da trigger con una fila quando è stato aggiunto un record, modificato o cancellato.

Risposto il 05/08/2008 a 22:32
fonte dall'utente

voti
0

OmniAudit è un pacchetto commerciale che implments auditng attraverso un intero database.

Metodo libera sarebbe quella di scrivere un trigger per ogni tabella che addes entry ad una tabella di controllo quando sparò.

Risposto il 05/08/2008 a 22:04
fonte dall'utente

voti
0

È possibile aggiungere un campo timestamp a quel tavolo e aggiornare tale valore timestamp con un trigger di aggiornamento.

Risposto il 05/08/2008 a 21:34
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more