Aracılığıyla paylaş


sp_changearticle (Transact-SQL)

makale işlem ya da anlık görüntü yayınında özelliklerini değiştirir.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_changearticle [ [@publication= ] 'publication' ]
    [ , [ @article= ] 'article' ]
    [ , [ @property= ] 'property' ]
    [ , [ @value= ] 'value' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]
    [ , [ @publisher = ] 'publisher' ]

Bağımsız değişkenler

  • [ @publication=] 'publication'
    Is the name of the publication that contains the article.publication is sysname, with a default of NULL.

  • [ @article=] 'article'
    Is the name of the article whose property is to be changed.article is sysname, with a default of NULL.

  • [ @property=] 'property'
    Is an article property to change.property is nvarchar(100).

  • [ @value=] 'value'
    Is the new value of the article property.value is nvarchar(255).

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

    Özellik

    Values

    Açıklama

    creation_script

     

    Yolunu ve adını hedef tablo oluşturmak için kullanılan makale şema.Varsayılan değer NULL olur.

    del_cmd

     

    DELETE deyim yürütmek; aksi halde, günlükten oluşturulur.

    Açıklama

     

    Makale yeni tanımlayıcı girdisi.

    dest_object

     

    Geriye dönük uyumluluk için sağlanır.Kullanımı dest_table.

    dest_table

     

    Yeni hedef tablo.

    destination_owner

     

    Hedef nesnenin sahibi adı.

    filtre

     

    (Yatay süzme) tablosunda filtre oluşturmak için kullanılacak yeni saklı yordam.Varsayılan değer NULL olur.Eşler arası çoğaltma yayınlar için değiştirilemez.

    fire_triggers_on_snapshot

    TRUE

    Kullanıcı Tetikleyicileri yinelenmiş, yürütülen ilk anlık görüntü görüntü görüntü uygulanır.

    NoteNote:
    Tetikleyici, çoğaltılması, , bit maskesi değeri schema_option değer içermelidir 0x100.

     

    yanlış

    Rapor anlık görüntü görüntü görüntüsünü ilk uygulandığında Tetikleyicileri yürütülemeyen kullanıcı çoğaltıldı.

    identity_range

     

    Denetimleri, Abone tarafında atanan kimlik aralıklarını boyutunu atanır.Eşler arası çoğaltma için desteklenmiyor.

    ins_cmd

     

    Deyimini yürütmek için INSERT; aksi halde, günlükten oluşturulur.

    pre_creation_cmd

    Bırakma, silmek veya eşitleme uygulanmadan önce hedef tablo kesecek pre-creation komutu.

     

    yok

    Bir komutu kullanmaz.

     

    bırakma

    Hedef Tablo bırakır.

     

    silme

    Hedef Tablo siler.

     

    Kes

    Hedef Tablo keser.

    pub_identity_range

     

    Denetimleri, Abone tarafında atanan kimlik aralıklarını boyutunu atanır.Eşler arası çoğaltma için desteklenmiyor.

    schema_option

    Specifies the bitmap of the schema generation option for the given article.schema_option is binary(8).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.

     

    0x01

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

     

    0x02

    Tanımlanan değişiklikleri makale, depolanan yordamlar oluşturur.

     

    0x04

    Kimlik sütunları KIMLIK özellik'ni kullanarak komut dosyası.

     

    0x08

    Çoğaltma timestamp sütunlar. Aksi takdirde, küme timestamp sütun olarak çoğaltılan binary.

     

    0x10

    Ilgili kümelenmiş dizin oluşturur.

     

    0x20

    Abone veri türlerini temel dönüştürür kullanıcı tanımlı veri türleri (UDT).Olduğunda UDT sütun, 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.Oracle Yayımcılar için desteklenmiyor.

     

    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

    Birincil anahtar ve benzersiz bir tablo makalesini tuşlar, ALTER TABLE deyimleri kullanarak kısıtlamaları olarak çoğaltılır.

    NoteNote:
    Bu seçenek devre dışı bırakmıştır.Kullanımı 0x80 and 0x4000 yerine.

     

    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

     

    0x800000

    Kural bağlar

     

    0x1000000

    Tam metin dizini

     

    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) 8000 bayttan büyük 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.

    0x20000000000

    Sütunların SPARSE özniteliği çoğaltılır.Bu öznitelik hakkında daha fazla bilgi için bkz: Seyrek sütunları kullanma.

    Durum

    Yeni özellik durumunu belirtir.

     

    DTS yatay bölümleri

    Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

     

    sütun adlarını içerir.

    Sütun adları, çoğaltılmış bir INSERT deyim içinde yer alır.

     

    hiçbir sütun adları

    Sütun adları çoğaltılmış INSERT deyiminde yer almaz.

     

    dts yatay bölümleri olmayan

    Makale yatay bölümü transformable bir abonelik tarafından tanımlanır.

     

    yok

    Tüm durum seçeneklerinde temizler sysarticles tablo ve makale devre dışı olarak işaretler.

     

    parametreler

    Abone parametreleştirilmiş komutları kullanmak için değişiklikler yayılır.Yeni bir makale için varsayılan ayar budur.

     

    string literals

    Dize hazır bilgi değerleri kullanarak abone için değişiklikler yayılır.

    sync_object

     

    Tablo veya Görünüm bir eşitleme çıktı dosyası üretmek için kullanılan adı.Varsayılan değer NULL olur.Oracle Yayımcılar için desteklenmiyor.

    tablo alanı

    Bir Oracle veritabanından yayımlanmış bir makaleye günlüğe kaydetme tablo tarafından kullanılan tablo alanı tanımlar.Daha fazla bilgi için bkz: Oracle Tablespaces yönetme.

    Eşiği

     

    Distribution Agent'ne zaman yeni bir kimlik aralık atar denetleyen yüzde değeri.Eşler arası çoğaltma için desteklenmiyor.

    türü

     

    Oracle Yayımcılar için desteklenmiyor.

     

    logbased

    Günlük tabanlı makale.

     

    logbased manualboth

    Günlük tabanlı makale el ile süzgeç ve el ile görüntüle.Bu seçenek gerektiren sync_object ve filter özellikleri de küme. Oracle Yayımcılar için desteklenmiyor.

     

    logbased manualfilter

    El ile süzgeç içeren günlük tabanlı makale.Bu seçenek gerektiren sync_object ve filter özellikleri de küme. Oracle Yayımcılar için desteklenmiyor.

     

    logbased manualview

    Günlük tabanlı makale el ile görünümüyle.Bu seçenek gerektiren sync_object özellik de küme. Oracle Yayımcılar için desteklenmiyor.

     

    indexed viewlogbased

    dizinli görünüm günlük tabanlı makale.Oracle Yayımcılar için desteklenmiyor.Bu makale türü için temel tablo, ayrı olarak yayımlanacak şekilde gerek yoktur.

     

    indexed viewlogbased manualboth

    dizinli görünüm günlük tabanlı makale el ile süzgeç ve el ile bir görünüm.Bu seçenek gerektiren sync_object ve filter özellikleri de küme. Bu makale türü için temel tablo, ayrı olarak yayımlanacak şekilde gerek yoktur.Oracle Yayımcılar için desteklenmiyor.

     

    indexed viewlogbased manualfilter

    dizinli görünüm günlük tabanlı makale el ile süzgeç ile.Bu seçenek gerektirir sync_object ve filter özellikleri de küme. Bu makale türü için temel tablo, ayrı olarak yayımlanacak şekilde gerek yoktur.Oracle Yayımcılar için desteklenmiyor.

     

    indexed viewlogbased manualview

    dizinli görünüm günlük tabanlı makale el ile görünümüyle.Bu seçenek gerektiren sync_object özellik de küme. Bu makale türü için temel tablo, ayrı olarak yayımlanacak şekilde gerek yoktur.Oracle Yayımcılar için desteklenmiyor.

    upd_cmd

     

    UPDATE deyim için yürütmek; aksi halde, bu günlükten oluşturulur.

    null

    null

    Değiştirilebilir makale özelliklerin bir listesini döndürür.

  • [ @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 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 makale değişiklikler geçersiz olduğu anlık görüntü 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 belirtir.

    Ö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 makale değişiklikleri 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 makale değişiklikleri yeniden, , varolan abonelikler neden olduğunu belirtir 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.

  • [ Yayımcı'ın = ] 'publisher'
    Specifies a non-SQL Server Publisher.publisher is sysname, with a default of NULL.

    Not

    publisher üzerinde makale özelliklerini değiştirirken kullanılmamalıdır bir SQL Server Yayımcı.

Dönüş Kodu Değerleri

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

Remarks

sp_changearticle işlem çoğaltma anlık görüntü çoğaltması çoğaltması de kullanılır.

makale eşler arası işlem çoğaltma destekleyen bir yayına ait olduğu zaman, yalnızca değiştirebileceğiniz Açıklama, ins_cmd, upd_cmd, and del_cmd özellikleri.

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

  • del_cmd

  • dest_table

  • destination_owner

  • ins_cmd

  • pre_creation_cmd

  • schema_options

  • upd_cmd

Aşağıdaki özelliklerden herhangi birini değiştirmek, varolan gerektirir abonelikler yeniden, ve bir değer belirtmeniz gerekir 1 for the force_reinit_subscription parametre.

  • del_cmd

  • dest_table

  • destination_owner

  • filter

  • ins_cmd

  • status

  • upd_cmd

Varolan bir yayına içinde kullanabilirsiniz sp_changearticle bırakın ve yayın tamamını yeniden oluşturmak zorunda kalmadan bir makale değiştirmek için.

Not

Değerini değiştirirken schema_option, sistem, bir bit güncelleştirmesi gerçekleştirmez. Bunun anlamı schema_option kullanma sp_changearticlebit 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_helparticle.

Geçerli şema seçenekleri

Aşağıdaki tablo izin verilen değerleri açıklar. schema_option çoğaltma türü (üst boyunca görüntülenen) ve makale türü (ilk sütun boyunca gösterilen) göre.

Makale türü

Çoğaltma türü

 

 

Işlem

Anlık görüntü

logbased

Tüm Seçenekler

Tüm seçenekler ancak 0x02

logbased manualfilter

Tüm Seçenekler

Tüm seçenekler ancak 0x02

logbased manualview

Tüm Seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbased

Tüm Seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbased manualfilter

Tüm Seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbased manualview

Tüm Seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbase manualboth

Tüm Seçenekler

Tüm seçenekler ancak 0x02

işlem Yönet

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

seri hale getirilebilir işlem Yönet

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

yalnızca şema işlem

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

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

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, ve 0x80000000

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, ve 0x80000000

işlev şema

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

0x01, 0x20, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, and 0x80000000

dizinli görünüm şema

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, ve 0x80000000

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, ve 0x80000000

Not

Kuyruğa Alınmış Güncelleştirme yayınlar için schema_option değeri 0x80 etkinleştirilmiş olması gerekir.Desteklenen schema_option için değer olmayan-SQL Server yayınları şunlardır: 0x01, 0x02, 0x10, 0x40, 0x80, 0x1000 and 0x4000.

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü için yürütmek sp_changearticle.