Dela via


Konflikt vid avancerad sammanfogningsreplikering – COM-Based anpassade lösare

gäller för:SQL Server

Anpassade matchare ger mer flexibilitet än standardlösningsmekanismen, och de kan implementera affärslogik som krävs av program med hjälp av replikerade data. En COM-baserad anpassad upplösare är ett DLL-bibliotek (Dynamic Link Library) som implementerar ICustomResolver COM-gränssnittet, dess metoder och egenskaper samt andra stödgränssnitt och typdefinitioner som utformats specifikt för konfliktlösning.

Anmärkning

Vi rekommenderar att du använder en affärslogikhanterare istället för en COM-baserad skräddarsydd lösare om möjligt. Mer information om affärslogikhanterare finns i Köra affärslogik under sammanslagningssynkronisering.

Om du vill skapa en anpassad COM-matchare kan du använda typbiblioteket som finns i replrec.dll; Som standard installeras det här biblioteket på <enheten>:\Program Files\Microsoft SQL Server\nnn\COM.

Innan du skriver en anpassad COM-lösare måste du bestämma:

  • De typer av radändringar som du vill lösa, såsom uppdateringar, infogningar och borttagningar, och om lösaren ska anropas vid uppladdning, nedladdning av sammanslagningsändringar, eller båda. Du kan ange en typ av ändring, alla ändringar eller valfri kombination. Standardlösningen för sammanslagningskonflikter hanterar eventuella konflikter som inte omfattas av en anpassad lösning.

  • Om du vill använda kolumnspårning när du löser konflikten. När spårning på kolumnnivå är aktiverat flaggas endast data i de kolumner där en konflikt finns som en konflikt, annars sammanfogas data. Konflikter löses dock på samma sätt som spårning på radnivå: prioritetsvinnaren skriver över hela dataraden (men data kan vara en blandning av värden från Utgivare, Prenumeranter eller vissa ändrade värden som varken kommer från Utgivare eller Prenumeranter). Mer information finns i Identifiera och lösa sammanslagningsreplikeringskonflikter.

Information om hur du implementerar en COM-baserad anpassad konfliktlösare finns i Implementera en anpassad konfliktlösare för en sammanslagningsartikel.

En anpassad lösning har angetts för en artikel, inte en hel publikation. Samma matchare kan användas med mer än en artikel, men logiken i anpassade matchare är ofta specifik för en viss tabell. Om tabellen som används i artikeln ändras när matcharen har skapats (till exempel byta namn på det kolumnnamn som används i konfliktlösning) kan den anpassade matcharen behöva ändras och kompileras om.

Information om hur du anger en anpassad lösare finns i Ange en lösare för sammanslagningsartikel.