Conflits de synchronisation

Microsoft Replication Manager

Conflits de synchronisation

Des conflits peuvent survenir lorsque des données sont modifiées dans deux réplicas ou plus.

Cette rubrique présente des informations de référence sur les sujets suivants :

Différences de comportement en cas de conflit dans Access

Conflit de mise à jour simultanée

Conflit de clé unique

Conflit de validation au niveau de la table

Conflit de contrainte d'intégrité référentielle de mise à jour

Conflit de contrainte d'intégrité référentielle de suppression

Conflit de verrouillage

Conflit de violation de clé externe

Respect de la casse dans les jeux de réplicas

Conflits dans des réplicas partiels

Résolution des conflits

Différences de comportement en cas de conflit dans Access

Dans Microsoft Access 95 et 97, des conflits et des erreurs de synchronisation survenaient lorsque deux utilisateurs mettaient à jour un même enregistrement dans deux bases de données différentes d'un jeu de réplicas. La synchronisation des deux bases de données aboutissait, mais un seul des deux jeux de modifications était appliqué aux deux bases de données. Des erreurs de synchronisation survenaient lorsqu'une modification apportée aux données contenues dans une base de données d'un jeu de réplicas ne pouvait pas être appliquée à une autre base de données du jeu de réplicas car elle violait l'intégrité référentielle ou une autre contrainte.

Dans Access 2000, les événements qui entraînent des conflits et des erreurs de synchronisation sont tous considérés comme des conflits de synchronisation. Vous pouvez les enregistrer et les résoudre à l'aide d'un mécanisme unique, ce qui en facilite le processus. Chaque fois qu'un conflit survient, une modification gagnante est sélectionnée et appliquée à tous les réplicas : la modification perdante est enregistrée comme un conflit dans tous les réplicas. L'observateur de conflits, l'outil par défaut dans Access, permet d'accorder et de résoudre les conflits de synchronisation.

Retour au début

Conflit de mise à jour simultanée

Un conflit de mise à jour simultanée survient lorsque deux réplicas mettent à jour un même enregistrement. L'enregistrement perdant est enregistré dans la table de conflit. Obtenir des informations sur le suivi des modifications apportées à vos données.

Retour au début

Conflit de clé unique

Un conflit de clé unique peut survenir de l'une des manières suivantes :

  • Deux réplicas ont entré un nouvel enregistrement présentant la même valeur dans un champ qui représente une clé primaire ou possède un index unique.

  • Le réplica-maître crée un index unique et un réplica ajoute simultanément deux ou plusieurs enregistrements présentant la même valeur de clé. Lorsque la modification du schéma atteint le premier réplica contenant les enregistrements de clé dupliqués, le premier enregistrement de clé dupliqué reste dans la table de base. Les enregistrements suivants sont marqués pour la suppression et sont inscrits dans la table de conflit.

Retour au début

Conflit de validation au niveau de la table

Un conflit de validation au niveau de la table survient lorsque les données entrées violent une règle de validation au niveau de la table qui limite les valeurs ou les types de données qui peuvent être entrés dans une table. Si vous ajoutez une règle de validation au niveau de la table dans le réplica-maître sans déterminer si les données existantes violent cette règle, vous pouvez être confronté à un conflit lors de la synchronisation des modifications apportées à la structure du reste du jeu de réplicas. Dans ce cas, les enregistrements sont supprimés et inscrits dans la table de conflit.

Retour au début

Conflit d'intégrité référentielle de mise à jour

Un conflit d'intégrité référentielle de mise à jour survient lorsque la clé primaire est mise à jour dans un réplica et que de nouveaux enregistrements enfants, faisant référence à la clé primaire initiale, sont ajoutés dans un autre réplica.

Retour au début

Conflit d'intégrité référentielle de suppression

Un conflit d'intégrité référentielle de suppression survient lorsqu'un enregistrement de clé primaire est supprimé d'un réplica tandis que de nouveaux enregistrements enfants, faisant référence à la clé primaire supprimée, sont ajoutés dans un deuxième réplica. Lorsque les deux réplicas sont synchronisés, les nouveaux enregistrements enfants sont marqués pour la suppression et ajoutés dans la table de conflit.

Retour au début

Conflit de verrouillage

Un conflit de verrouillage survient lorsque l'enregistrement ne peut pas être appliqué lors de la synchronisation car un autre utilisateur a verrouillé la table. Microsoft Access essaiera de mettre à jour l'enregistrement plusieurs fois. En cas d'échec, la synchronisation sera interrompue et l'ensemble de la transaction sera renvoyé à son état initial. Une erreur est retournée mais aucun conflit n'est enregistré.

Retour au début

Conflit de violation de clé externe

Un conflit de violation de clé externe survient lorsqu'un enregistrement de clé primaire est incorrect. Ceci peut avoir pour cause n'importe quel autre type de conflit.

Retour au début

Respect de la casse dans les jeux de réplicas

Le nombre des conflits peut augmenter dans les jeux de réplicas qui se trouvent dans plusieurs types de base de données, Access et Microsoft SQL Server par exemple, si l'ordre de tri de la langue ou le respect de la casse du tri est différent. Ceci s'explique par le fait que les valeurs de clé unique dans une base de données peuvent ne pas être uniques dans la base de données présentant un tri différent. Ce problème peut affecter aussi bien les métadonnées que les données texte indexées, mais ne concerne pas les données texte non indexées. La création de réplicas présentant un tri différent requiert une attention particulière pour vous assurer que les métadonnées et le texte indexé soient toujours uniques pour les deux méthodes de tri.

Retour au début

Conflits dans des réplicas partiels

Un réplica partiel reçoit les conflits associés à l'ensemble des lignes qu'il contient, y compris les lignes qui lui sont ajoutées au cours de la synchronisation.

Retour au début

Résolution des conflits

Si un même enregistrement dans une base de données répliquée est changé en un ou plusieurs réplicas, des conflits peuvent survenir lorsque vous synchronisez un réplica avec le jeu de réplicas. Lorsque vous choisissez de résoudre ces conflits, Access appelle l'observateur de conflits. L'Assistant présente chaque conflit et vous devez déterminer manuellement l'enregistrement modifié qui contient les informations correctes. Comment résoudre les conflits de synchronisation entre les membres d'un jeu de réplicas.

Retour au début