Aracılığıyla paylaş


Gelişmiş Birleştirme Çoğaltma Çakışması - COM-Based Özel Çözümleyiciler

Şunlar için geçerlidir: SQL Server

Özel çözümleyiciler varsayılan çözüm mekanizmasından daha fazla esneklik sağlar ve çoğaltılan verileri kullanan uygulamalar için gereken iş mantığını uygulayabilir. COM tabanlı özel çözümleyici, ICustomResolver COM arabirimini, yöntemlerini ve özelliklerini ve çakışma çözümü için özel olarak tasarlanmış diğer destekleyici arabirimleri ve tür tanımlarını uygulayan bir dinamik bağlantı kitaplığıdır (DLL).

Uyarı

Mümkünse COM tabanlı özel çözümleyici yerine iş mantığı işleyicisi kullanılması önerilir. İş mantığı işleyicileri hakkında daha fazla bilgi için bkz. Birleştirme Eşitlemesi Sırasında İş Mantığı Yürütme.

Özel bir COM çözümleyicisi oluşturmak için, replrec.dllsağlanan tür kitaplığını kullanabilirsiniz; varsayılan olarak, bu kitaplık sürücü>:\Program Files\Microsoft SQL Server\nnn\COM konumunda < yüklenir.

Özel bir COM çözümleyicisi yazmadan önce aşağıdakilere karar vermeniz gerekir:

  • Çözmek istediğiniz satır değişikliği türleri (güncellemeler, eklemeler, silmeler) ve çözümleyicinin birleştirme değişikliklerinin karşıya yüklenmesi, indirilmesi sırasında ya da her iki durumda da çağrılıp çağrılmayacağı. Tek bir değişiklik türü, tüm değişiklikler veya herhangi bir birleşim belirtebilirsiniz. Varsayılan birleştirme çakışma çözümleyicisi, özel bir çözümleyici tarafından kapsanmayan çakışmaları işler.

  • Çakışmayı çözerken sütun izlemenin kullanılıp kullanılmaymayacağı. Sütun düzeyinde izleme açık olduğunda, yalnızca çakışmanın bulunduğu sütunlardaki veriler çakışma olarak işaretlenir, aksi takdirde veriler birleştirilir. Ancak, çakışmalar satır düzeyi izlemeyle aynı şekilde çözülür: Öncelik sahibi veri satırının tamamını yeniden yazar (ancak veriler, Yayıncıdan, Abonelerden veya her ikisinden de olmayan bazı değiştirilmiş değerlerin karışımı olabilir). Daha fazla bilgi için bkz. Birleştirme Çoğaltma Çakışmalarını Algılama ve Çözme.

COM tabanlı özel çakışma çözümleyicisi uygulamak için bkz. Birleştirme Makalesi için Özel Çakışma Çözümleyicisi Uygulama.

Yayının tamamı için değil, bir makale için özel çözümleyici belirtilir. Aynı çözümleyici birden fazla makaleyle kullanılabilir, ancak özel çözümleyicilerdeki mantık genellikle belirli bir tabloya özgüdür. Makalede kullanılan tablo çözümleyici oluşturulduktan sonra değiştirilirse (örneğin, çakışma çözümlemesinde kullanılan sütun adını yeniden adlandırma), özel çözümleyicinin değiştirilmesi ve yeniden derlenmesi gerekebilir.

Özel çözümleyici belirtmek için bkz. Birleştirme Makale Çözümleyicisi Belirtme.