Un método que he visto con bastante frecuencia es tener tablas de auditoría. Luego, puede mostrar lo que ha cambiado, lo que ha cambiado y de qué cambió, o lo que quiera que su corazón desee. Entonces, podría escribir un desencadenador para hacer el registro real. No es demasiado doloroso si se hace correctamente ...
No importa cómo lo haga, depende de cómo se conectan los usuarios a la base de datos. ¿Están usando un usuario de una sola aplicación a través de un contexto de seguridad dentro de la aplicación, se están conectando usando sus propias cuentas en el dominio, o la aplicación simplemente hace que todos se conecten con una cuenta sql genérica?
Si no puede obtener la información del usuario de la conexión de la base de datos, es un poco más problemático. Y luego puede ver el registro en la aplicación, por lo que si tiene un proceso llamado "CreateOrder" o lo que sea, puede iniciar sesión en la tabla Order_Audit o lo que sea.
Al hacerlo todo dentro de la aplicación, se abre un poco más a los cambios realizados desde fuera de la aplicación, pero si tiene múltiples aplicaciones todas usando la misma información y solo quería ver qué cambios realizó, quizás eso es lo que quería ... < encogimiento de hombros>
¡Buena suerte para usted, sin embargo!
--Kevin
Algunos buena discusión aquí: http://discuss.joelonsoftware.com/default.asp?design.4.483891 .10 –
Véase también [¿El mejor diseño para una tabla de base de datos de registro de cambios/auditoría?] (Https://stackoverflow.com/questions/201527/best-design-for-a-changelog-auditing-database-table) – user