J'ai un scénario dans lequel j'utilise la réplication transactionnelle pour répliquer plusieurs bases de données SQL Server 2005 (même instance) dans une seule base de données distante (instance différente sur une machine physique distincte). Je réalise ensuite un traitement sur les données répliquées à des fins de génération de rapports. J'utilise des déclencheurs au niveau de la table pour identifier les changements d'actions que mon code de post-traitement.ID de transaction de réplication SQL Server 2005/8
Jusqu'à présent, tout va bien. Cependant, ce que je voudrais savoir, c'est que, lorsque certaines tables sont créées, mises à jour ou supprimées dans la même transaction, est-il possible d'identifier une sorte d'ID de transaction de réplication (ou n'importe où)? t effectuer le même post-traitement plusieurs fois pour une seule transaction.
Exemple de base: J'ai une table TUser et une table TAddress. Si je devais créer les deux en une seule transaction, ils seraient également répliqués dans une même transaction. Cependant, il y aurait deux déclencheurs déclenchés dans la base de données répliquée - ce qui entraîne actuellement l'exécution de mon code de post-traitement deux fois. Ce que je voudrais vraiment identifier, c'est que ces deux changements sont arrivés dans la réplique dans la même transaction.
Est-ce possible d'une manière ou d'une autre? Est-ce qu'un identifiant tel que je l'ai décrit existe et est-il accessible?
Merci pour votre réponse. Pourriez-vous fournir des informations concernant le résumé des réponses longues? Même si ce n'est pas possible, j'aimerais savoir à quoi vous pensez. –
Comme pour les autres solutions, les deux ont été considérées. Cependant l'exemple que j'ai donné était très simpliste, et est en fait une base de données de systèmes financiers avec des centaines de tables. Les modifications du courtier de service et de l'interrogation ont été annulées. Nous avons atterri là où nous sommes après un bon nombre de recherches, mais nous aimerions vraiment pouvoir lier différentes modifications de table à une seule transaction si possible. Je crois qu'il existe des valeurs Transaction du système disponibles, mais je ne suis pas sûr de leur fiabilité. –