Symptom
Tänk dig följande situation:
-
Du kan installera Microsoft SQL Server Compact 3.5 på en dator.
-
Du kan skapa en abonnent i SQL Server Compact 3.5.
-
Du hämtar många rader från en kopplingspublikation till en databas när den har synkroniserats med abonnenten. Raderna som innehåller många artiklar och begränsningar.
I det här fallet loggas ett felmeddelande som liknar följande i felloggen för SQL Server:
System.Data.SqlServerCe.SqlCeExceptionNative fel = 0, HRESULT =-2147217873, felmeddelande: ett angivet värde bröt mot integritetsbegränsningarna för en kolumn eller tabell.
Obs! Det här problemet uppstår i både 32-bitars och 64-bitars operativsystem.
Orsak
Det här problemet beror på en ogiltig exchange-ID används. När många rader för hämtning är väntande, anropar SQL Compact Client Agent en metod i försök som använder en ogiltig exchange-ID. Därför uppstår problemet som beskrivs i avsnittet ”Symptom”.
Lösning
Den snabbkorrigering som löser problemet ingår i samlingsuppdateringen 5 för SQL Server Compact 3.5 Service Pack 2 (SP2). Mer information om hur du skaffar kumulativt uppdateringspaket 5 för SQL Server Compact 3.5 SP2 klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
2553608 Kumulativ uppdatering 5 för SQL Server Compact 3.5 Service Pack 2