2010-09-13 2 views
2

Je lance une réplication de serveur SQL pour synchroniser une table avec une base de données (de génération de rapports) distincte.Création d'une réplication de serveur SQL avec certaines transformations de données (pendant ou à la fin)

Dans la base de données source, tous les enregistrements ont une valeur DateTime (pas si rare), mais il est pas stocké comme DateTime, mais comme un Guid ... qui pointe vers une table qui contient tous les horodateurs (un pour chaque minute). Maintenant, ce que je voudrais faire est pendant le processus de réplication (ou à la fin, ou continue à la base de données cible) rechercher l'horodatage (en datetime valeur) dans la base de données TimeStamps et remplir un champ supplémentaire dans la cible base de données avec cette valeur DateTime.

La raison en est que je peux interroger la base de données cible sur des dates-dates spécifiques sans avoir à la joindre à la base de données d'horodatage.

Est-ce possible?

J'ai vu comme propriété de la réplication une propriété 'DTS', ce qui me fait penser que je peux en quelque sorte spécifier un paquet DTS, mais la propriété n'est pas activée et je pense que DTS est déprécié?

+0

Quel modèle de réplication utilisez-vous? Transactionnel, instantané ou fusionner? –

+0

J'utilise transactionnel – Michel

Répondre

4

En supposant une réplication transactionnelle, je personnaliserais les procédures stockées sp_MSins_YourTable et sp_MSupd_YourTable sur l'abonné pour effectuer la recherche/traduction supplémentaire. Assurez-vous de bien documenter cette personnalisation à chaque fois que vous devrez supprimer/recréer la réplication, vos procs personnalisés seront à nouveau remplacés par les standards.

+0

Merci, c'était l'endroit où je cherchais aussi. (Et en effet trouvé que la réinitialisation de la réplication ne recréer le sp) – Michel

+0

cela fourni un bon moyen de commencer. Étant donné que les déclencheurs ne sont pas supprimés lorsque la réplication redémarre, j'ai décidé de l'implémenter dans un déclencheur. – Michel

Questions connexes