Share via


sp_repladdcolumn (Transact-SQL)

Yayımlanmış olan varolan bir tablo makale için bir sütun ekler.Bu tablo yayımlamak veya sütun tablo yayımlar belirli bir yayın yalnızca Ekle tüm yayımcılar eklenecek yeni bir sütun verir.Bu saklı yordam, yayın veritabanı üzerinde yayımcı adresindeki yürütülür.

Önemli notÖnemli

Bu saklı yordam onaylanmaz ve esas olarak 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, tanıtılan veri türlerini içeren sütunlar üzerinde kullanılmaması gerekir SQL Server 2005 veya SQL Server 2008.

Konu bağlantısı simgesiTransact-sql sözdizimi kuralları

Sözdizimi

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.

  • [ @column =] '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, null karakter ve varsayılan değer olarak n, order_filled olurdu column parametresi, sütun tanımı sırasında char(1) not null varsayılan KISITLAMA constraint_name 'n' olurdu typetext 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 ALL, then all publications containing this table are affected.If publication_to_add is specified, then only this publication has the new column added.

  • [ @ 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 bırakın ve kullanıcı tanımlı özel saklı yordamlarda destekleyen ile değiştirmek için kullanılabiliryeni şema.

    • 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 , geçersiz olduğu anlık makale değişiklikler neden olabilir belirtir ve değeri, durum olup olmadığını 1 yeni anlık görüntü ortaya izni verir.

    0 , değişiklikleri belirtir makale anlık görüntü geçersiz olarak neden olmaz.

  • [ @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 abonelik yeniden neden belirtir.

    1 makale değişiklikleri abonelik yeniden neden olabileceğini belirtir ve değeri, durum olup olmadığını 1 gerçekleşmesi abonelik reinitialization izni verir.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (başarısız)

Açıklamalar

sp_repladdcolumn onaylanmaz ve -yalnızca geriye dönük uyumluluk için sağlanır.Bir sütun için bir yinelenen tablo makale ekleyerek yapılması yürüterek veri tanımı dili (ddl) komutlarını yayımlanmış tablo karşı.Etkin ddl çoğaltma sürece çoğaltma bu ddl komutlar otomatik olarak çoğaltır.Daha fazla bilgi için bkz: Yayını veritabanları üzerinde şeması değişiklikler yapma.

sp_repladdcolumnyayma ddl değişiklikler önceki bir sürüm çalıştıran aboneleri yeniden yayınlama gelen hala gereklidir SQL Server 2000 aboneleri.

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

Kullanırken sp_repladdcolumn, yoksa bir Data Transformation Services (dts) paket kullanan yayın ait bir makale için bir şema değişikliği yapılan şema değişikliği için abone yayılma değil ve özel yordamlar INSERT/update/delete için değil aboneleri yenidenKullanıcı, dts yeniden oluşturması gerekiyor paket el ile ve karşılık gelen şema aboneleri değiştirmek olun.Ş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 olmadığından emin olun.

Zaman typetext işlev işlev olan bir varsayılan değeri atanır (örneğin, 'datetime null default getdate()'), yakınsaması işlev sütuna varsayılan bir değer yüklemek için Abone tarafında yürütülür çünkü yeni sütun ekledikten sonra meydana gelebilir.

Zaman damgası ve hesaplanan sütunlar için karakter modu yayınlar filtrelenir.Zaman damgası veya hesaplanan sütun kullanarak ekleme, sp_repladdcolumn, bu tür yayınları abonelikleri almazsınız yeni bir sütun bu.

Önemli notÖnemli

A yedek yayın veritabanı sonra gerçekleştirilmesi gereken sp_repladdcolumn yürütülmüştür.Bunun yapılmaması geri yükleme yükledikten sonra birleştirme hatası neden olabilir yayın veritabanı.

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü ve db_owner sabit veritabanı rolü olabilir yürütmek sp_repladdcolumn.