Aracılığıyla paylaş


Nasıl Yapılır: Birleştirme tablo makaleleri (RMO programlama) arasındaki mantıksal kayıt ilişki tanımlama

Not

This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

Birleştirme çoğaltma farklı tablolardaki ilişkili satırları arasında bir ilişki tanımlamanızı sağlar.Bu satırlar daha sonra eşitleme sırasında hareketsel bir birim olarak işlenebilir.mantıksal kayıt olup olmadığını, birleştirmek filtresi ilişkisi olan iki makaleleri arasında tanımlanabilir.Daha fazla bilgi için bkz: Değişiklikleri mantıksal kayıtlarıyla ilgili satırları gruplandırma.

Program aracılığıyla çoğaltma Management Objects (RMO) kullanarak makalelere arasındaki mantıksal kayıt ilişkileri de belirtebilirsiniz.

Not

Birleştirme çoğaltma, çakışma izlenir ve mantıksal kayıt düzeyinde çözümlenen belirlemenizi sağlar, ancak bu seçenekler, RMO kullanılarak ayarlanamaz.Çoğaltma kullanarak bu seçenekler hakkında bilgi için saklı yordamlar için bkz: Nasıl Yapılır: Birleştirme tablo makaleleri (çoğaltma Transact-SQL programlama) arasındaki mantıksal kayıt ilişki tanımlama.

Bir ilişkili birleştirmek filtresi olmadan bir mantıksal kayıt ilişki tanımlamak için

  1. Yayımcı bağlantısını kullanarak oluşturduğunuz ServerConnection sınıf.

  2. örnek MergePublication sınıf, ayarla Name() ve DatabaseName() yayım ve küme özelliklerini ConnectionContext() özellik Adım 1 oluşturulmuş bağlantı.

  3. Call LoadProperties() yöntem, nesne özelliklerini almak için. Bu yöntem döndürüyorsa false, adım 2'de Yayın özelliklerini yanlış olarak tanımlanmış veya yayını yok.

  4. If the PartitionGroupsOption() özellik is küme to False(), küme it to True().

  5. Mantıksal kaydı oluşturan olan makaleleri yoksa, bir kopyasını oluşturmak MergeArticle sınıf ve küme aşağıdaki özellikleri:

    • Bu makale için adı Name().

    • yayın adıPublicationName().

    • (Isteğe bağlı) makale yatay süzülür, satır filtre yan tümce için belirttiğiniz FilterClause() özellik. Bu özellik, statik veya parametreli satır bir filtre belirtmek için kullanın.Daha fazla bilgi için bkz: Parametreli satır süzgeçleri.

    Daha fazla bilgi için bkz: Nasıl Yapılır: Bir makale (RMO programlama) tanımlayın..

  6. Call Create() yöntem.

  7. 5 Ve 6 numaralı adımları mantıksal kayıt içeren her bir makale için yineleyin.

  8. örnek MergeJoinFilter makaleleri arasındaki mantıksal kayıt ilişki tanımlamak için sınıf'ı tıklatın. Ardından, aşağıdaki özellikleri ayarlayın:

    • Alt adını makale için mantıksal kayıt ilişkideki ArticleName() özellik.

    • Ad için mantıksal kayıt ilişkisinde, varolan üst makalenin JoinArticleName() özellik.

    • Bir ad için mantıksal kayıt ilişki için FilterName() özellik.

    • Ilişki için tanımlayan ifade JoinFilterClause() özellik.

    • Değeri LogicalRecordLink() için FilterTypes() özellik. Mantıksal kayıt ilişki de birleştirmek filtresi, değerini belirtin. JoinFilterAndLogicalRecordLink() Bu özellik. Daha fazla bilgi için bkz: Değişiklikleri mantıksal kayıtlarıyla ilgili satırları gruplandırma.

  9. Call AddMergeJoinFilter(MergeJoinFilter) ilişkideki alt makale temsil eden nesne yöntem. Geçiş MergeJoinFilter Nesneyi adım 8 ilişki tanımlamak için.

  10. Her mantıksal kalan için yineleme adım 8 ve 9 ilişkisinde kayıt yayın.

Example

Bu örnek için iki yeni makaleleri içeren mantıksal kayıt oluşturur SalesOrderHeader and SalesOrderDetail tablolar.