Provare con Change Data Capture. È un buon modo per tenere traccia delle modifiche sul DB. Devi abilitare la funzione su uno o più DB, quindi su una o più tabelle (è una funzione Tabella, quindi lo farai per ogni tabella che ti serve).
Abilita CDC sul database.
Supponiamo di voler abilitare CDC per il database AdventureWorks. Dobbiamo eseguire il seguente SP per essere sicuri che questa funzionalità funziona:
USE AdventureWorks
GO
EXEC sys.sp_cdc_enable_db
GO
Come risultato, troveremo un nuovo schema chiamato cdc e diversi tavoli aggiunti automaticamente:
- cdc. captured_columns - Questa tabella restituisce il risultato per l'elenco della colonna acquisita.
- cdc.change_tables - Questa tabella restituisce l'elenco di tutte le tabelle abilitate per l'acquisizione.
- cdc.ddl_history - Questa tabella contiene la cronologia di tutte le modifiche DDL poiché i dati di acquisizione sono abilitati.
- cdc.index_columns - Questa tabella contiene gli indici associati alla tabella dei cambiamenti.
- cdc.lsn_time_mapping - Questa tabella mappa il numero e l'ora di LSN.
Abilita CDC sul tavolo.
Dopo aver attivato CDC su DB (s) desiderato è il momento di controllare se ci sono tavoli con questa funzione:
USE AdventureWorks
GO
SELECT [name], is_tracked_by_cdc
FROM sys.tables
GO
In caso contrario, siamo in grado di abilitare i cambiamenti catturano per la tabella con HumanResources.Shift la seguente procedura:
USE AdventureWorks
GO
EXEC sys.sp_cdc_enable_table
@source_schema = N'HumanResources',
@source_name = N'Shift',
@role_name = NULL
GO
assicuratevi di SQL Agente è installato e funzionante perché crea un posto di lavoro (cdc.AdventureWorks_capture probabilmente) per catturare le modifiche. Se tutte le procedure sono eseguite correttamente troveremo una nuova tabella chiamata cdc.HumanResources_Shift_CT, tra le tabelle di sistema, contenente tutte le modifiche di HumanResources.Shift.
Nota: fare attenzione con il parametro @role_name, specifica l'accesso alle informazioni del database.
fonte
2013-05-17 07:30:29
Track Data Modifiche (SQL Server) per il server SQL 2008 ... http: //msdn.microsoft.com/en-us/library/bb933994 % 28v = sql.100% 29.aspx – wcraft
[Confronto tra acquisizione dati modifica e rilevamento modifiche] (http://msdn.microsoft.com/en-us/library/cc280519 (v = sql.100) .aspx). –