Bonjour,
Nous cherchons à avoir un historique des modifications pour la plupart des colonnes de notre base, dans une table du type :
Identity, IdColonne, DateHeure, IdUser, Valeur
(ca ne prend pas trop de place et c'est facile à interroger)
Ceci doit fonctionner sur sql2012 standard (donc pas de cdc/change tracking à priori(on m'a dit que c'était sur entreprise seulement)) et idéalement sur express
Tout part donc d'un (ou pluseurs) trigger sur chaque table à gérer, et pour ne pas ralentir les applis nous voudrions en faire le maximum en asynchrone.
ce qu'on faisait pour l'instant, c'est une table d'historique pour chaque table, le trigger insert la table inserted dans la table d'historique (l'insert brut étant rapide) et un thread .net dépile ce qu'il y a dans ces tables pour remplir la table finale (suppressions des doublons vu que souvent une seule colonne est modifiée ...)
Trigger asynchrone je ne pense pas que ca existe, trigger CLR ca semble lent sur nos premiers tests, donc je cherche idéalement un moyen de faire tenir inserted et deleted de toutes mes tables dans une seule table
le nombre/type de colonnes étant différent d'une table à l'autre il faudrait un moyen de "sérialiser" tout ca dans une seule colonne/valeur et rapidement ...
Sinon je suis ouvert à toute suggestion.
Merci.
Partager