Aracılığıyla paylaş


sp_repladdcolumn (Transact-SQL)

Varolan bir sütun ekler tablo yayımlanmış bir makaleyi.Bu tablo yayımlamak veya yalnızca belirli bir sütunun'ni Ekle tüm yayımcılar eklenecek yeni bir sütun sağlar yayın, tablo yayımlar.Bu saklı yordam, yayın Veritabanı yayımcısına sırasında yürütülür.

Important noteImportant Note:

Bu saklı yordam onaylanmaz ve çoğunlukla geriye dönük uyumluluk için desteklenir.It should only be used with Microsoft SQL Server 2000 Publishers and SQL Server 2000 republishing Subscribers.Bu yordam, sunulan veri türlerine sahip sütunlarda kullanılmamalıdır SQL Server 2005 veya SQL Server 2008.

Topic link iconTransact-SQL sözdizimi kuralları

sp_repladdcolumn [ @source_object = ] 'source_object', [ @column = ] 'column' ]
    [ , [ @typetext = ] 'typetext' ]
    [ , [ @publication_to_add = ] 'publication_to_add' ]
    [ , [ @from_agent = ] from_agent ]
    [ , [ @schema_change_script = ] 'schema_change_script' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]

Bağımsız değişkenler

  • [source_object =] ' source_object'
    Is the name of the table article that contains the new column to add.source_object is nvarchar(358), with no default.

  • [sütun =] ' column'
    Is the name of the column in the table to be added for replication.column is sysname, with no default.

  • [typetext =] ' typetext'
    Is the definition of the column being added.typetext is nvarchar(3000), with no default.Örneğin, sütun order_filled eklenmekte olan ve tek bir alan, değilse BOş karakter ve varsayılan değeri olarak. norder_filled olacaktır column Parametre sırasında sütunun tanımı NOT NULL VARSAYıLAN CONSTRAINT constraint_name char(1) 'N' olabilirtypetext parametre değeri.

  • [publication_to_add =] ' publication_to_add'
    Is the name of the publication to which the new column is added.publication_to_add is nvarchar(4000), with a default of ALL.If TÜM, daha sonra bu tabloyu içeren tüm yayınları etkilendiğini.If publication_to_add sonra bu yayına eklenen yeni bir sütun varsa, belirtildi.

  • [from_agent =] from_agent
    If the stored procedure is being executed by a replication agent.from_agent is int, with a default of 0, where a value of 1 is used when this stored procedure is being executed by a replication agent, and in every other case the default value of 0 should be used.

  • [schema_change_script =] ' schema_change_script'
    Specifies the name and path of a SQL Server script used to modify the system generated custom stored procedures.schema_change_script is nvarchar(4000), with a default of NULL.Replication allows user-defined custom stored procedures to replace one or more of the default procedures used in transactional replication.schema_change_script is executed after a schema change is made to a replicated table article using sp_repladdcolumn, and can be used to do one of the following:

    • Özel saklı yordamlarda otomatik olarak, yeniden oluşturulur schema_change_script Bu özel saklı yordamlarda açılır ve bunları yeni şema destekleyen kullanıcı tanımlı özel saklı yordamlarda değiştirmek için kullanılır.

    • If custom stored procedures are not automatically regenerated, schema_change_scriptcan be used to regenerate these stored procedures or to create user-defined custom stored procedures.

  • [force_invalidate_snapshot =] force_invalidate_snapshot
    Enables or disables the ability to have a snapshot invalidated.force_invalidate_snapshot is a bit, with a default of 1.

    1 makale yapılan değişiklikler, geçersiz olduğu anlık görüntü neden olabileceğini belirtir ve diğer bir deyişle, durum, değeri1 yeni anlık görüntü yapılmasına izin verir.

    0 makale yapılan değişiklikleri geçersiz olduğu anlık görüntü neden belirtir.

  • [force_reinit_subscription =] force_reinit_subscription
    Enables or disables the ability to have the subscription reinitializated.force_reinit_subscription is a bit with a default of 0.

    0 makale değişiklikleri yeniden abonelik neden belirtir.

    1 aboneliğin yeniden, , makale değişiklikler neden olabileceğini belirtir ve değeri durumda olmasıdır.1 abonelik reinitialization, yapılmasına izin verir.

Dönüş Kodu Değerleri

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

Remarks

sp_repladdcolumn onaylanmaz ve -yalnızca geriye dönük uyumluluk için sağlanır.Bir yinelenmiş bir tabloda makale için bir sütun ekleyerek, yayımlanmış tabloda veri tanımlama dili (DDL) komutlarını yürütmek yoluyla yapılmalıdır.DDL çoğaltma yeniden etkinleştirildi sürece çoğaltma, DDL komutlar otomatik olarak kopyalar.Daha fazla bilgi için bkz: Üzerinde yayın Databases şema değişiklikleri yapma.

sp_repladdcolumn republishing aboneleri önceki bir sürüm çalıştıran DDL değişikliklerden yayılıyor hala gereklidir SQL Server 2000 Abonelerin.

sp_repladdcolumn çoğaltma türleri için kullanılır.

Ait olduğu bir makale için bir şema değişikliği yaptıysanız, sp_repladdcolumn kullanırken bir yayın kullanan bir veri dönüştürme Hizmetleri (DTS) paket şema değişikliği için abone yayılır ve abonelerin üzerinde özel yordamlar için ıNSERT/UPDATE/DELETE oluşturulur.Kullanıcı, DTS paketini el ile yeniden oluşturmanız ve karşılık gelen şema abonelerin değiştirme yapmak gerekir.Şema güncelleştirmesi uygulanmışsa, sonraki değişiklikleri uygulamak Dağıtım Aracısı çalışmayabilir.Bir şema değişikliği yapmadan önce teslim edilmesini bekleyen hareketler bulunmadığından emin olun.

Ne zaman typetext nondeterministic bir işlev (örneğin, bir varsayılan değere atanır. 'datetime değil null varsayılan getdate()'), yakınsaması sütuna varsayılan bir değer'i yüklemek için abone işlev yürütüldükten olduğundan yeni bir sütun ekledikten sonra ortaya çıkabilir.

Karakter modu yayınlar için zaman damgası ve hesaplanan sütunlar filtrelenir.Bir zaman damgası veya sp_repladdcolumn kullanarak hesaplanan sütun ekleyerek, böyle bir yayın abonelikler bu yeni bir sütun almazsınız.

Important noteImportant Note:

Sp_repladdcolumn çalıştırıldı sonra yayın veritabanının yedeğini gerçekleştirilmelidir.Bunu yapmak için başarısızlık, yayın veritabanı yüklenmesinden sonra bir birleştirme hatası neden olabilir.

İzinler

Sadece sysadmin sabit sunucu rolü ve db_owner sabit veritabanı rolü üyeleri gerçekleştirebilir yürütmek sp_repladdcolumn.