Procédure : désactiver des contraintes de clé étrangère pour la réplication (Visual Database Tools)

Si une table est publiée à l'aide du processus de réplication, les contraintes de clé étrangère sont automatiquement désactivées lors des opérations effectuées par les Agents de réplication. Lorsqu'un Agent de réplication effectue une requête Insert, Update ou Delete vers un abonné, la contrainte n'est pas vérifiée ; si c'est un utilisateur qui effectue la requête Insert, Update ou Delete, la contrainte est vérifiée. La contrainte est désactivée pour l'Agent de réplication car elle était déjà vérifiée au niveau de l'éditeur lorsque les données ont été insérées, mises à jour ou supprimées à l'origine. Pour plus d'informations, consultez Contrôle des contraintes, des identités et des déclencheurs avec l'option NOT FOR REPLICATION.

Vous pouvez également choisir expressément de désactiver les contraintes clé étrangère pour la réplication, ce qui est parfois très utile si vous publiez des données issues d'une version précédente de SQL Server.

Pour désactiver une contrainte de clé étrangère lors de la réplication

  1. Dans l'Explorateur d'objets, développez la table avec la contrainte de clé étrangère que vous souhaitez modifier, puis développez le dossier Clés.

  2. Cliquez avec le bouton droit sur la contrainte de clé étrangère et cliquez sur Modifier.

  3. Dans la boîte de dialogue Relations de clé étrangère, sélectionnez la valeur Non pour Appliquer la réplication.

  4. Cliquez sur Fermer.