Synchronisatieconflicten - overzicht

Synchronisatieconflicten - overzicht

Conflicten kunnen zich voordoen wanneer gegevens worden gewijzigd in twee of meer replica's.

In dit onderwerp vindt u informatie over:

Verschillen in conflictgedrag tussen verschillende Access-versies

Conflicten door gelijktijdig bijwerken

Conflicten met een unieke sleutel

Conflicten bij validatie op tabelniveau

Conflicten met referentiδle integriteit na bijwerken

Conflicten met referentiδle integriteit na verwijdering

Vergrendelingsconflicten

Conflicten door schending van de externe sleutel

Onderscheid tussen hoofdletters en kleine letters in replicasets

Conflicten in gedeeltelijke replica's

Conflicten oplossen

Verschillen in conflictgedrag tussen verschillende Access-versies

In Microsoft Access 95 en 97 wordt onderscheid gemaakt tussen synchronisatieconflicten en synchronisatiefouten. Synchronisatieconflicten doen zich voor wanneer twee gebruikers dezelfde record bijwerken in twee verschillende databases in een replicaset. De twee databases kunnen wel worden gesynchroniseerd, maar slechts ΘΘn van de twee sets met wijzigingen wordt op beide databases toegepast. Synchronisatiefouten doen zich voor wanneer een wijziging van gegevens in de ene database van een replicaset niet kan worden toegepast op een andere database in de replicatieset omdat dit de referentiδle integriteit of een andere beperking zou schenden.

In Access 2000 worden de gebeurtenissen die synchronisatieconflicten en -fouten veroorzaken beide als synchronisateconflicten beschouwd. Er wordt maar ΘΘn mechanisme gebruikt om de conflicten te registreren en op te lossen, wat het proces aanzienlijk vereenvoudigt. Telkens wanneer een conflict ontstaat, wordt bepaald welke wijziging wint. Deze wordt in alle replica's toegepast. De verliezende wijziging wordt in alle replica's als conflict geregistreerd. Met de conflictweergave, het standaardhulpmiddel in Access, wordt geprobeerd synchronisatieconflicten op te lossen.

Terug naar boven

Conflicten door gelijktijdig bijwerken

Een conflict door gelijktijdig bijwerken treedt op wanneer in twee replica's dezelfde record wordt bijgewerkt. De verliezende record wordt in de conflicttabel opgenomen. Klik op de volgende hypelink voor informatie over het bijhouden van wijzigingen in gegevens.

Terug naar boven

Conflicten met een unieke sleutel

Een conflict met een unieke sleutel kan op een van de volgende manieren ontstaan:

Terug naar boven

Conflicten bij validatie op tabelniveau

Een conflict bij validatie op tabelniveau doet zich voor wanneer gegevens in een tabel worden ingevoerd die een validatieregel op tabelniveau schenden. Een validatieregel op tabelniveau beperkt de waarden of gegevenstypen die in een tabel kunnen worden ingevoerd. Als u een validatieregel op tabelniveau aan het ontwerpmodel toevoegt zonder eerst te controleren of bestaande gegevens aan deze regel voldoen, kan een conflict optreden wanneer u de ontwerpwijziging synchroniseert met de rest van de replicaset. In dat geval worden de records verwijderd en in de conflicttabel geregistreerd.

Terug naar boven

Conflicten met referentiδle integriteit na bijwerken

Een conflict met de referentiδle integriteit na bijwerken doet zich voor wanneer de primaire sleutel wordt bijgewerkt in de ene replica en aan een andere replica nieuwe subrecords worden toegevoegd die naar de oorspronkelijke primaire-sleutelwaarde verwijzen.

Terug naar boven

Conflicten met referentiδle integriteit na verwijdering

Een conflict met de referentiδle integriteit na verwijdering doet zich voor wanneer een primaire-sleutelrecord in de ene replica wordt verwijderd terwijl aan een andere replica nieuwe subrecords worden toegevoegd die naar de verwijderde primaire sleutel verwijzen. Wanneer de twee replica's worden gesynchroniseerd, worden de nieuwe subrecords gemarkeerd voor verwijdering en aan de conflicttabel toegevoegd.

Terug naar boven

Vergrendelingsconflicten

Een vergrendelingsconflict doet zich voor wanneer de record tijdens de synchronisatie niet kan worden bijgewerkt omdat de tabel door een andere gebruiker is vergrendeld. Er wordt verscheidene keren geprobeerd de record bij te werken. Als dit niet lukt, wordt de synchronisatiepoging gestaakt en wordt de hele transactie in de oorspronkelijke staat teruggebracht. Er wordt een foutmelding weergegeven, maar geen conflict geregistreerd.

Terug naar boven

Conflicten door schending van de externe sleutel

Een conflict door schending van de externe sleutel doet zich voor wanneer er een record is met een ongeldige primaire sleutel. Een van de andere conflicttypen kan daarvan de oorzaak zijn.

Terug naar boven

Onderscheid tussen hoofdletters en kleine letters in replicasets

Het aantal conflicten kan toenemen bij replicasets die meerdere databasetypen omvatten, bijvoorbeeld Access en Microsoft SQL Server. Dit is met name het geval als de sorteervolgorde van de taal of de opties voor hoofdlettergevoeligheid van sorteerbewerkingen verschillen. Dat komt doordat unieke-sleutelwaarden in de ene database misschien niet uniek zijn in de database met een andere sorteervolgorde. Dit probleem kan invloed hebben op ge∩ndexeerde tekstgegevens en metagegevens, maar niet op niet-ge∩ndexeerde tekstgegevens. Het maken van replica's met verschillende sorteervolgordes vereist extra aandacht omdat u ervoor moet zorgen dat metagegevens en ge∩ndexeerde tekst voor beide sorteermethoden uniek zijn.

Terug naar boven

Conflicten in gedeeltelijke replica's

Een gedeeltelijke replica ontvangt conflicten die behoren bij alle rijen in de gedeeltelijke replica, zelfs voor rijen die tijdens de synchronisatie aan de gedeeltelijk replica worden toegevoegd.

Terug naar boven

Conflicten oplossen

Als dezelfde record in een gerepliceerde database in een of meer replica's wordt gewijzigd, treden conflicten op wanneer u de replica synchroniseert met de replicaset. Wanneer u besluit deze conflicten op te lossen, wordt de conflictweergave van Access geactiveerd. In deze wizard wordt elk conflict weergegeven, waarbij u zelf moet bepalen welke record de juiste informatie bevat. Klik op de volgende hyperlink voor informatie over het oplossen van synchronisatieconflicten tussen leden van replicasets

Terug naar boven