Comment ajouter une colonne constante lors de la réplication d'une base de données?

StackOverflow https://stackoverflow.com/questions/64202

  •  09-06-2019
  •  | 
  •  

Question

J'utilise SQL Server 2000 et j'ai deux bases de données qui se répliquent (abonnement push transactionnel) dans une base de données unique. J'ai besoin de savoir de quelle base de données proviennent les enregistrements.

Je souhaite donc ajouter une colonne fixe spécifiée dans la publication à ma table afin de déterminer la base de données à l'origine de la ligne.

Comment puis-je m'y prendre?

Je voudrais éviter de modifier les bases de données principales, principalement en raison du nombre de tables pour lesquelles je devrais le faire. J'espérais une fonctionnalité de réplication intégrée qui ferait cela pour moi quelque part. Sinon, j'irais avec l'idée de la vue.

Était-ce utile?

La solution 3

La solution pour moi était donc de configurer les publications de réplication pour permettre les transformations et de créer un package DTS pour chaque site qui ajoute l'id de site dans les tables pour que les identifiants soient uniques, car je ne peux pas utiliser de guides.

Autres conseils

Vous pouvez utiliser une colonne calculée. Utilisez les éléments suivants sur les deux bases de données:


ALTER TABLE TableName ADD
    MyColumn AS 'Server1'

Il suffit ensuite de définir le " maître " unique base de données pour utiliser une colonne VARCHAR (ou celle que vous souhaitiez) que vous remplissez à l'aide de la valeur des colonnes calculées.

Vous pouvez créer une vue qui ajoute la & constante; constante " colonne et utilisez-la comme source de réplication.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top