L'enregistrement d'audit basé MySQL Trigger avec des comparaisons
-
22-08-2019 - |
Question
En regardant des questions similaires comme:
Stratégies de journalisation d'audit
Je voudrais prendre un peu plus loin et comparer les données mises à jour pour voir si elle a effectivement été mis à jour ... Je ne sais pas si ce qui est idéal (performance sage).
Arrière-plan:
Nous avons des données qui sont mis à jour périodiquement par l'utilisateur.
Lorsque ces données sont mis à jour, je voudrais comparer ce qu'ils ont présenté avec ce qui est déjà là et ce qu'ils ont présenté, pour vous assurer qu'il ya eu un changement.
S'il y a eu un changement, passez à écrire une entrée d'audit à la table centrale de l'histoire de vérification décrivant les champs modifiés.
Pensées / idées? Je faisais de mon mieux pour la recherche mais n'a pas eu beaucoup de chance. Je serai heureux de supprimer cette question si elle est un doublon.
Merci!
La solution
Vous pouvez écrire un déclencheur où vous BEFORE UPDATE
utilisez l'alias OLD
et dans votre NEW
déclencheur pour comparer les valeurs qui étaient disponibles dans le dossier avant la mise à jour avec les valeurs que vous mettez à jour avec. En fonction du résultat de la comparaison, vous pouvez écrire une entrée à votre table d'audit.