Aracılığıyla paylaş


sp_changemergearticle (Transact-SQL)

Bir birleştirme özelliklerini değiştirir makale.Bu saklı yordam, yayın Veritabanı yayımcısına sırasında yürütülür.

Topic link iconTransact-SQL sözdizimi kuralları

sp_changemergearticle [ @publication = ] 'publication'
        , [ @article = ] 'article'
    [ , [ @property = ] 'property' ]
    [ , [ @value = ] 'value' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]

Bağımsız değişkenler

  • [ @publication=] 'publication'
    Is the name of the publication in which the article exists.publication is sysname, with no default.

  • [ @article=] 'article'
    Is the name of the article to change.article is sysname, with no default.

  • [ @property=] 'property'
    Is the property to change for the given article and publication.property is nvarchar(30), and can be one of the values listed in the table.

  • [ @value=] 'value'
    Is the new value for the specified property.value is nvarchar(1000), and can be one of the values listed in the table.

    Bu tablo, makalelere ve bu özelliklerin değerlerini özelliklerini açıklar.

    Özellik

    Values

    Açıklama

    allow_interactive_resolver

    TRUE

    Makale, etkileşimli bir çözümleyici kullanımını etkinleştirir.

     

    yanlış

    Makale, etkileşimli bir çözümleyici kullanımını devre dışı bırakır.

    article_resolver

     

    Özel çözümleyici makale.Yalnızca bir tablo makale geçerlidir.

    check_permissions (bit eşlem)

    0x00

    Tablo düzey izinleri denetlenmez.

     

    0x10

    Tablo düzey izinler, Yayımcı tarafında INSERT deyimleri Abone tarafında yapılan uygulanabilmesi Yayımcı tarafında denetlenir.

     

    0x20

    Tablo düzey izinler, Yayımcı tarafında Abone tarafında yapılan bir UPDATE deyimi uygulanabilmesi Yayımcı tarafında denetlenir.

     

    0x40

    Tablo düzey izinler, Yayımcı tarafında DELETE deyimleri abone sırasında Yayımcı tarafında uygulanabilmesi denetlenir.

    column_tracking

    TRUE

    sütun kapatır düzey izleme.Yalnızca bir tablo makale geçerlidir.

    NoteNote:
    Sütun düzey yayımlama birden çok 246 sütunlarla tabloları, izleme kullanılamaz.

     

    yanlış

    Sütun düzeyinde izleme devre dışı bırakır ve satır düzeyinde çakışma algılama bırakır.Yalnızca bir tablo makale geçerlidir.

    compensate_for_errors

    TRUE

    Eşitleme sırasında hata ortaya çıktığında, compensating eylemler gerçekleştirilir.Daha fazla bilgi için bkz: sp_addmergearticle.

     

    yanlış

    Dengeleyici eylemler, varsayılan davranıştır, gerçekleştirilir değil.Daha fazla bilgi için bkz: sp_addmergearticle.

    Important noteImportant Note:
    Yakınsama işlemi dışında hata adresi olarak olmasını etkilenen satırlardaki veriler görünebilir, ancak değişikliklerin uygulanması ve veri yakınsamaya.Için kaynak tablo, bir makale zaten başka bir yayın sonra değeri yayımlanır compensate_for_errors iki makaleler için aynı olması gerekir.

    creation_script

     

    Yolunu ve adını makaleyi abonelik veritabanında oluşturmak için kullanılan bir isteğe bağlı bir makale şema.

    delete_tracking

    TRUE

    DELETE deyimleri çoğaltılır, varsayılan davranıştır.

     

    yanlış

    DELETE deyimleri değil çoğaltılır.

    Important noteImportant Note:
    Ayarı delete_tracking to yanlış sonuçlar yakınsaması ve Silinmiş satırları el ile kaldırılması gerekir.

    Açıklama

     

    Makale tanımlayıcı girdisi.

    destination_owner

     

    Yoksa abonelik veritabanı nesnesinde sahibinin adı dbo.

    identity_range

     

    bigint makale varsa, yeni kimlik değerleri atarken kullanılacak aralık boyutunu belirtir identityrangemanagementoption küme to otomatik or auto_identity_range küme to TRUE.Yalnızca tablo makale geçerlidir.Daha fazla bilgi için "Birleştirme çoğaltma" bölümüne bakın. Kimlik sütunları çoğaltılıyor.

    identityrangemanagementoption

    el ile

    Otomatik kimlik aralık yönetimi devre dışı bırakır.Kimlik sütunları el ile kimlik aralık işlemeyi etkinleştirmek IÇIN NOT çoğaltma kullanarak işaretler.Daha fazla bilgi için bkz: Kimlik sütunları çoğaltılıyor.

     

    yok

    Tüm kimlik aralık yönetimi devre dışı bırakır.

    logical_record_level_conflict_detection

    TRUE

    Herhangi bir yeri, değişiklik, çakışma algılandı mantıksal kayıt.Gerektirir logical_record_level_conflict_resolution be küme to TRUE.

     

    yanlış

    Kullanılan varsayılan çakışma algılama ile belirtilen column_tracking.

    logical_record_level_conflict_resolution

    TRUE

    Tüm kazanan mantıksal kayıt, kaybeden mantıksal kayıt üzerine yazar.

     

    yanlış

    Kazanan satırlar mantıksal kayda sınırlı değildir.

    partition_options

    0

    The filtering for the article either is static or does not yield a unique subset of data for each partition, i.e.an "overlapping" partition.

     

    1

    Bölümleri üst üste gelen ve DML güncelleştirmeleri Abone tarafında yapılan bir satırın ait olduğu bölümü değiştiremezsiniz.

     

    2

    makale için süzme, örtüşmeyen bölümleri verir, ancak birden çok aboneleri, aynı bölüm alabilir.

     

    3

    Bu makale için bir süzme her abonelik için benzersiz olan çakışmayan bölümlerini üretir.

    NoteNote:
    Bir değer belirtirseniz 3 for partition_options, yalnızca bir tek abonelik her bölüm için veri olabilir makale.Yeni Abonelik bir süzgeç ölçütü için varolan aboneliği aynı bölüme çözümler ikinci bir abonelik oluşturulursa, varolan abonelik bırakılır.

    pre_creation_command

    yok

    Tablo zaten abone tarafında varsa, hiçbir işlem yapılmaz.

     

    silme

    WHERE yan tümcesinde alt küme küme kümesini süzgeç temel alan bir silme verir.

     

    bırakma

    Düşme tablo önce onu yeniden oluşturma.

     

    Kes

    Hedef Tablo keser.

    processing_order

     

    int birleştirme makalelerinde işlem sırasını belirten yayın.

    pub_identity_range

     

    bigint bir abone olan bir sunucu için ayrılmış aralığı boyutunu belirleyen abonelik makale varsa identityrangemanagementoption küme to otomatik or auto_identity_range küme to TRUE.Bu kimlik aralık için kendi aboneleri için ayırmaya republishing bir abone rezerve edilir.Yalnızca tablo makale geçerlidir.Daha fazla bilgi için "Birleştirme çoğaltma" bölümüne bakın. Kimlik sütunları çoğaltılıyor.

    published_in_tran_pub

    TRUE

    Ayrıca bir işlem yayımlandıktan yayın.

     

    yanlış

    makale ayrıca hareketsel bir yayında yayımlanmıyor.

    resolver_info

     

    Özel bir çözümleyici tarafından gerekli olan ek bilgileri belirtmek için kullanılır.Some of the Microsoft Resolvers require a column provided as input to the resolver.resolver_info is nvarchar(255), with a default of NULL.Daha fazla bilgi için bkz: Microsoft COM tabanlı çözücüler.

    schema_option (bit eşlem)

    Daha fazla bilgi için bu konunun ilerleyen bölümlerindeki Açıklamalar bölümüne bakın.

     

    0x00

    Anlık Görüntü Aracısı tarafından komut dosyası kullanan kullanan dosyası kullanan devre dışı bırakır ve sağlanan komut dosyası kullanan kullanan dosyasını kullanır. creation_script.

     

    0x01

    Nesne oluşturma komut (CREATE tablo, CREATE PROCEDURE vb.) oluşturur.

     

    0x10

    Ilgili kümelenmiş dizin oluşturur.

     

    0x20

    Abone veri türlerini temel kullanıcı tanımlı veri türleri dönüştürür.Olduğunda kullanıcı tanımlı tür (UDT) sütununda, bir CHECK veya VARSAYıLAN kısıtlama UDT sütunu birincil anahtarının parçası veya hesaplanan sütun UDT sütun başvuruyorsa, bu seçenek kullanılamaz.

     

    0x40

    Ilgili kümelenmemiş dizin oluşturur.

     

    0x80

    Birincil anahtarlar üzerinde bildirilen bilgi tutarlılığı'nı içerir.

     

    0x100

    Bir tablo makale üzerinde kullanıcı Tetikleyicileri tanımlanmışsa çoğaltır.

     

    0x200

    yabancı anahtar kısıtlamaları çoğaltır.Başvurulan tablonun yayın bir parçası değilse, yayımlanmış bir tablonun tüm yabancı anahtar kısıtlamaları çoğaltılmaz.

     

    0x400

    CHECK kısıtlamaları çoğaltır.

     

    0x800

    Varsayılan olarak çoğaltılır.

     

    0x1000

    sütun düzeyinde harmanlama çoğaltır.

     

    0x2000

    Genişletilmiş Özellikler yayımlanmış kaynak nesne ilişkili çoğaltır.

     

    0x4000

    Benzersiz anahtarlar, bir tablo makale tanımlanmışsa çoğaltır.

     

    0x8000

    ALTER tablo deyimi kısıtlamaları komut dosyası kullanan kullanan dosyası kullanan zaman oluşturur.

     

    0x10000

    Böylece, eşitleme sırasında kısıtlamalar zorlandığı CHECK kısıtlamaları NOT FOR çoğaltma çoğaltılır.

     

    0x20000

    Böylece, eşitleme sırasında kısıtlamalar zorlandığı yabancı anahtar kısıtlamaları NOT FOR çoğaltma çoğaltılır.

     

    0x40000

    bölümlenmiş tablo veya dizin ile ilişkili dosya gruplarını çoğaltır.

     

    0x80000

    bölümlenmiş tablo için bölümleme düzeni çoğaltır.

     

    0x100000

    bölümlenmiş dizin için bölümleme düzeni çoğaltır.

     

    0x200000

    Çoğaltır istatistik tablosu.

     

    0x400000

    Varsayılan bağlantılar çoğaltır.

     

    0x800000

    Bağlantılar çoğaltır kural

     

    0x1000000

    Tam metin dizinine kopyalar.

     

    0x2000000

    XML şema koleksiyonları bağlı xml sütunları çoğaltılmaz.

     

    0x4000000

    Üzerinde dizin çoğaltır. xml sütunlar.

     

    0x8000000

    Zaten mevcut olan şemalar abonelik oluşturun.

     

    0x10000000

    Dönüştürür xml sütunları ntext Abone üzerinde.

     

    0x20000000

    Büyük nesne veri türleri ((ingilizce) dönüştürür.nvarchar(max), varchar(max), ve varbinary(max))'de sunulan SQL Server 2005 üzerinde desteklenen veri türleri SQL Server 2000. Bu türleri ile nasıl eşleştirildikleri hakkında daha fazla bilgi için "Eşleme yeni veri türleri için önceki sürümler" bölümüne bakın... Bir çoğaltma topolojisi SQL Server birden çok sürümünü kullanma.

     

    0x40000000

    Izinleri çoğaltırlar.

     

    0x80000000

    yayın bir parçası olmayan herhangi bir nesne bağımlılıkları bırakma girişimi.

    0x100000000

    Üzerinde belirtilirse FILESTREAM özniteliği çoğaltmak için bu seçeneği kullanın. varbinary(max) sütunlar. Tablolara çoğaltıyorsanız, bu seçeneği belirtin SQL Server 2005 Abonelerin. FILESTREAM sütunları olan tablo çoğaltılıyor SQL Server 2000 Abonelerin desteklenmiyor, bu şema seçeneği ayarlanma şekli olsun. Ilgili seçeneği Bkz: 0x800000000.

    0x200000000

    Tarih ve saat veri türü () dönüştürür.date, time, datetimeoffset, ve datetime2)'de sunulan SQL Server 2008 önceki sürümlerinde desteklenen veri türleri SQL Server. Bu türleri ile nasıl eşleştirildikleri hakkında daha fazla bilgi için "Eşleme yeni veri türleri için önceki sürümler" bölümüne bakın... Bir çoğaltma topolojisi SQL Server birden çok sürümünü kullanma.

    0x400000000

    Veri ve dizinler için sıkıştırma seçeneğini çoğaltır.Daha fazla bilgi için bkz: Sıkıştırılmış tablolar ve dizinler oluşturma.

    0x800000000

    küme dosya grubu abone adresindeki FILESTREAM veri saklamak için bu seçeneği.Bu seçenek, küme, FILESTREAM veriler üzerinde varsayılan dosya grubu depolanır.Çoğaltma dosya gruplarını oluşturun; bu seçeneği ayarlarsanız, rapor anlık görüntü görüntü görüntüsünü abone adresindeki uygulamadan önce bu nedenle, dosya grubu oluşturmanız gerekir.Rapor anlık görüntü görüntü görüntüsünü uygulamadan önce nesneleri oluşturma hakkında daha fazla bilgi için bkz: Önce ve sonra rapor anlık görüntüsünü uygulanan komut dosyalarını çalıştırma.

    Ilgili seçeneği Bkz: 0x100000000.

    0x1000000000

    Ortak dil çalışma zamanı (CLR) kullanıcı tanımlı türler (UDTs) dönüştürür varbinary(max) Böylece, sütunu Tür UDT çalışan aboneleri için çoğaltılabilir. SQL Server 2005.

    0x2000000000

    Dönüştürür hierarchyid veri türü için varbinary(max) Böylece sütun türü hierarchyid çalışmakta olan aboneleri için çoğaltılabilir SQL Server 2005. Daha fazla bilgi için kullanma hakkında hierarchyid Yinelenen tablolar, sütunlar Bkz: hierarchyid (Transact-SQL).

    0x4000000000

    Süzülmüş bir tablo dizinleri çoğaltır.Süzülmüş dizinler hakkında daha fazla bilgi için bkz: Süzülmüş dizin tasarım yönergeleri.

     

    0x8000000000

    Dönüştürür geography ve geometry veri türleri varbinary(max) Böylece, sütunların bu türleri çalışan aboneleri için çoğaltılabilir. SQL Server 2005.

     

    0x10000000000

    Sütun türü dizinlerde çoğaltır. geography ve geometry.

     

    null

    Sistem otomatik-makale geçerli şema seçeneği oluşturur.

    Durum

    Etkin

    Tablo yayımlamak için ilk işleme komut dosyasını çalıştırın.

     

    unsynced

    Tablo yayımlamak için ilk işlem komut dosyası, anlık görüntü Aracısı sonraki çalıştırdığında çalıştırılır.

    stream_blob_columns

    TRUE

    Bir veri akışı en iyi duruma getirme ikili büyük nesne sütunları çoğaltma yapılırken kullanılır.Ancak, mantıksal kayıtları gibi belirli birleştirme çoğaltma işlevleri hala akış en iyileştirme kullanılmasını engeller.

    Important noteImportant Note:
    Birleştirme Aracısı'nın performansını eşitleme sırasında bu belleği en iyi duruma getirme etkinleştirme zararı.Bu seçenek yalnızca megabayt veri içeren sütunlar çoğaltma yapılırken kullanılır.

     

    yanlış

    Ikili büyük nesne sütunları çoğaltma yapılırken, en iyi duruma getirme işlemini kullanılmaz.

    subscriber_upload_options

    0

    Güncelleştirmeleri kısıtlama, bir istemci abone olan bir abonelik sırasında yapılan; değişiklikler için karşıya Yayımcı.Bu özellik değiştirme, varolan gerek duyabilir aboneleri yeniden.

     

    1

    Bir abone bir istemciyle adresindeki değişikliğine izin verilmediğinden abonelik, ancak yayımcıya karşıya.

     

    2

    Değişiklikleri bir abone bir istemci aboneliği ile verilmez.

    subset_filterclause

     

    Yatay süzme belirten WHERE yan tümce.Yalnızca bir tablo makale geçerlidir.

    Important noteImportant Note:
    Performansı düşürmemek için işlevler için süzgeç yan tümceleri parametreli satır, sütun adları gibi uyguladığınız değil önerilir LEFT([MyColumn]) = SUSER_SNAME(). Kullanıyorsanız host_name Filtre yan tümce ve geçersiz kılma değeri HOST_NAME kullanarak veri türleri dönüştürmeniz gerekirDÖNÜŞTÜRME.Bu servis talebiyle ilgili en iyi yöntemler hakkında daha fazla bilgi için "HOST_NAME() değeri geçersiz kılma" bölümüne bakın Parametreli satır süzgeçleri.

    Eşiği

     

    Percentage value used for Subscribers running SQL Server Compact 3.5 SP1 or earlier versions of SQL Server.threshold controls when the Merge Agent assigns a new identity range.Yüzde eşik için belirtilen değer kullanıldığında, Birleştirme Aracısı yeni bir kimlik aralık oluşturur.Ne zaman kullanılır identityrangemanagementoption is küme to otomatik or auto_identity_range is küme to TRUE.Yalnızca tablo makale geçerlidir.Daha fazla bilgi için "Birleştirme çoğaltma" bölümüne bakın. Kimlik sütunları çoğaltılıyor.

    verify_resolver_signature

    1

    Güvenilir olup olmadığını belirlemek için özel bir çözümleyici sayısal imza doğrulanır kaynak.

     

    0

    Güvenilir bir kaynaktan olup olmadığını belirlemek için özel bir çözümleyici sayısal imza doğrulanır.

    NULL (default)

     

    Desteklenen değerler listesini verir. property.

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Acknowledges that the action taken by this stored procedure may invalidate an existing snapshot.force_invalidate_snapshot is a bit, with a default of 0.

    0 birleştirme makale yapılan değişiklikleri geçersiz olduğu anlık görüntü neden belirtir.saklı yordam değişiklik yeni bir anlık görüntü gerektirmez algılarsa, bir hata oluşuyor ve değişiklik yapılmaz.

    1 birleştirme makale değiştirir anlamına gelir anlık geçersiz olduğu neden olabilir ve geçersiz olarak işaretlenmesi için varolan anlık görüntüsünü ve oluşturulan yeni bir anlık görüntü için yeni bir anlık görüntü gerektiren varolan abonelikler varsa izin verir.

    Özellikleri için Açıklamalar bölümüne bakın, değiştirdiğinizde, yeni bir anlık görüntü oluşturmayı gerektirir.

  • [ @force_reinit_subscription = ] force_reinit_subscription
    Acknowledges that the action taken by this stored procedure may require existing subscriptions to be reinitialized.force_reinit_subscription is a bit, with a default of 0.

    0 değişiklikleri birleştirme makale yeniden abonelik neden belirtir.saklı yordam değişikliği yeniden için varolan abonelikler gerektiğini algılarsa, bir hata oluşuyor ve değişiklik yapılmaz.

    1 birleştirme makale yapılan değişiklikler, yeniden, , varolan abonelikler neden gösterir ve abonelik reinitialization, yapılmasına izin verir.

    Özellikleri için Açıklamalar bölümüne bakın, değiştirdiğinizde, tüm varolan abonelikler yeniden gerekir.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (hata)

Remarks

sp_changemergearticle birleştirme çoğaltmasında kullanılır.

Çünkü sp_changemergearticle kullanarak başlangıçta belirtilen makale özelliklerini değiştirmek için kullanılırsp_addmergearticle, refer to sp_addmergearticle bu özellikler hakkında daha fazla bilgi için.

Aşağıdaki özellikleri değiştirme, yeni bir anlık görüntü oluşturulmasını gerektirir ve bu değeri belirtmeniz gerekir 1 for the force_invalidate_snapshot Parametre:

  • check_permissions

  • column_tracking

  • destination_owner

  • pre_creation_cmd

  • schema_options

  • subset_filterclause

Aşağıdaki özelliklerini değiştirirken varolan gerektirir abonelikler yeniden, ve bir değer belirtmeniz gerekir 1 for the force_reinit_subscription Parametre:

  • check_permissions

  • column_tracking

  • destination_owner

  • subscriber_upload_options

  • subset_filterclause

3 Için bir değeri belirtirken partition_options, meta veriler temizlenir her Birleştirme Aracısı çalışır ve daha hızlı bir şekilde bölümlenmiş anlık görüntü süresi doluyor.Bu seçeneği kullanırken, abone etkinleştirme bölümlenmiş anlık görüntü olarak istenen düşünmelisiniz.Daha fazla bilgi için bkz: Anlık görüntüler için birleştirme yayınları ile parametreli hale getirilmiş süzgeçleri.

Ayarlarken column_tracking Tablo birleştirme diğer yayınlarda önceden yayınlanmışsa özellik, izleme sütun değeri bu tabloyu temel alan varolan makaleleri tarafından kullanılan ile aynı olmalıdır. Bu parametre, yalnızca tablo makaleleri özgüdür.

Birden çok yayın aynı temel temel alarak makaleleri yayımlamak, tablo, değişen delete_tracking özellik ya dacompensate_for_errors özellik, bir makale için aynı değişiklik aynı temel alan diğer makalelere yapılmasına neden olan tablo.

Birleştirme işlemi tarafından kullanılan Yayımcı oturum açma/kullanıcı hesabının doğru tablo izinleri yoksa, değişiklikleri geçersiz çakışma kaydedilir.

Değerini değiştirirken schema_option, sistem, bir bit güncelleştirmesi gerçekleştirmez.Bunun anlamı schema_option using sp_changemergearticlebit ayarları varolan, kapalı olabilir.Varolan ayarları korumak için gerçekleştirmeniz & (Bitwise VE) geçerli değerini, ayarlamakta olduğunuz değeri arasındakischema_optionyürüterek belirlenen sp_helpmergearticle.

Geçerli şema seçeneği tablo

The following table describes the allowed schema_optionvalues, depending on article type.

Makale türü

Şema seçenek değerleri

işlev şema

0x01 and 0x2000

dizinli görünüm şema

0x01, 0x040, 0x0100, 0x2000, 0x40000, 0x1000000, and 0x200000

yalnızca şema işlem

0x01 and 0x2000

tablo

Tüm Seçenekler.

yalnızca görünüm şema

0x01, 0x040, 0x0100, 0x2000, 0x40000, 0x1000000, and 0x200000

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü çalıştırabilirsinizsp_changemergearticle.