2010-05-10 6 views
0

Je suis en train de développer une interface utilisateur en C# .NET pour synchroniser 7 instances de bases de données de sauvegarde avec la base de données centrale une par une (Toutes les clés partageant le même schéma).) qui est amené au serveur central dans un périphérique amovible tel que pendrive sera composé de fichiers mdf et ldf de chaque client et sera attaché au serveur où réside la base de données centrale. Une fois toutes les bases de données de sauvegarde client attachées, je dois synchroniser (mettre à jour les données existantes ou insérer de nouvelles données dans la base de données centrale résidant dans le serveur) chaque base de données de sauvegarde une à une base de données centrale. Je veux savoir comment je peux synchroniser entre une base de données de sauvegarde avec une base de données centrale utilisant C# .NETSynchronisation entre la base de données client et la base de données centrale

Répondre

0

En supposant que vous ne modifiez pas les données des 6 autres bases de données via chaque instance, vous pouvez garder une sorte de journal d'enregistrement modifications, lisez-le et mettez à jour votre base de données centrale en fonction des informations stockées dans votre journal pour chaque base de données.

Si vous devez également mettre à jour chacune des 6 instances de chaque instance chargée, vous devrez effectuer une agrégation des modifications globales, puis les envoyer les unes aux autres. Vous pouvez également utiliser la gestion des versions des lignes pour comparer les données et les charger dans votre système central (mais vous devrez lire les lignes de chaque table pour les trouver).

Si vous avez également besoin de mettre à jour les données de votre base de données centrale -> vos clients, vous pouvez utiliser une technique similaire.

Modifier Pour effectuer la mise à jour proprement dite, vous devez avoir un DataReader ouvert sur votre base de données "Source" qui trouve les enregistrements. Puis, à partir de cet objet, créez un lecteur secondaire qui "sélectionnez ** les colonnes ** modifiées ** de chacune des tables désignées" et lisez cela Vous créez ensuite un objet de commande et ExecuteNonQuery sur votre base de données de destination.

+0

Je souhaite mettre à jour uniquement la base de données centrale de la base de données client. Ce n'est pas bidirectionnel. Comme je suis nouveau à cela, pouvez-vous donner des références à des exemples. Pouvez-vous s'il vous plaît me montrer l'exemple de comment je peux mettre à jour ou insérer de nouvelles données de la base de données à l'autre. Merci et salutations Indranil – piku

Questions connexes