Un método simple que he usado en el pasado es básicamente crear una segunda tabla cuya estructura sea similar a la que quiero auditar, y luego crear un disparador de actualización/eliminación en la tabla principal. Antes de actualizar/eliminar un registro, el estado actual se guarda en la tabla de auditoría mediante el activador.Sugerencias para implementar tablas de auditoría en SQL Server?
Aunque es efectivo, los datos en la tabla de auditoría no son los más útiles ni son fáciles de informar. Me pregunto si alguien tiene un método mejor para auditar los cambios en los datos.
No debe haber demasiadas actualizaciones de estos registros, pero es información altamente confidencial, por lo que es importante para el cliente que todos los cambios sean auditados y se notifiquen fácilmente.
SQL Server 2008 tiene compatibilidad incorporada con la nueva característica de Cambio de captura de datos –
andyp
Debo señalar que esta característica es solo disponible en la edición Enterprise. – user17060
La función Cambiar captura de datos también parece ser más para garantizar que los objetos de las aplicaciones se mantengan alineados con la base de datos en lugar de una solución de auditoría. (Por ejemplo, solo almacena cambios de 2 días). Aún necesitará buscar cambios y escribirlos en una tabla, por lo que también podría simplemente crear y utilizar activadores para escribir en una tabla de auditoría central como se muestra a continuación. Ah, y la URL anterior está rota, use este [enlace] (http://msdn.microsoft.com/en-us/library/bb933874.aspx). – BJury