Share via


sp_repladdcolumn (Transact-sql)

Bir sütun yayımlanmış olan varolan bir tablo makale ekler. Bu tablo yayımlamak veya sadece sütun tablo yayımlanan özel yayına eklemek tüm yayıncı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. İle yalnızca kullanılmalıdır Microsoft SQL Server 2000yayıncılar ve SQL Server 2000aboneleri yeniden yayınlama. Bu yordam, Tarih içinde sunulan veri türlerini içeren sütunlar kullanılmamalıdır SQL Server 2005ya SQL Server 2008.

Konu bağlantısı simgesi Transact-SQL Sözdizim 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'
    Tablo makale eklemek için yeni bir sütun içeren adıdır. source_objectise nvarchar(358), hiçbir varsayılan ile.

  • @column ='column'
    Çoğaltma için eklenecek tablo sütun addır. columnise sysname, hiçbir varsayılan ile.

  • @typetext ='typetext'
    Sütun tanımı ekleniyor. typetextise nvarchar(3000), hiçbir varsayılan ile. Örneğin, sütun order_filledekleniyor, ve tek bir karakter alanı, boş değil ve varsayılan değeri n, order_filled olacağını columnparametresi, sütun tanımı ise char(1) not null default kısıtlaması CONSTRAINT_NAME 'n' olacağını typetextparametre değeri.

  • @ publication_to_add ='publication_to_add'
    Yeni sütunun ekleneceği Yayını addır. publication_to_addise nvarchar(4000), varsayılan İş. Eğer tüm, daha sonra bu tablo içeren tüm yayınları etkilenir. Eğer publication_to_addsadece bu yayına eklenen yeni bir sütun vardır sonra belirtilen.

  • @ from_agent =]from_agent
    Çoğaltma aracısı tarafından yürütülmekte olan saklı yordamı varsa. from_agentise int, varsayılan 0, değeri nerede 1 bu saklı yordam çoğaltma aracısı tarafından çalıştırıldığında kullanılır ve her diğer durumda varsayılan değeri 0kullanılmalıdır.

  • @ schema_change_script ='schema_change_script'
    Adını ve yolunu belirtir bir SQL Serversistemi değiştirmek için kullanılan komut dosyası oluşturulan özel saklı yordamlarda. schema_change_scriptise nvarchar(4000), null varsayılan. Bir veya daha fazla işlem çoğaltma kullanılan varsayılan yordamları yerine kullanıcı tanımlı özel saklı yordamlar sağlar. schema_change_scriptbir yinelenen tablo makale kullanarak şema değişikliği yapıldıktan sonra idam sp_repladdcolumnve aşağıdakilerden birini yapmak için kullanılabilir:

    • Özel saklı yordamlarda otomatik olarak yeniden oluşturulur, schema_change_scriptBu özel saklı yordamlarda bırakın ve yeni şema destekleyen kullanıcı tanımlı özel saklı yordamlarda değiştirmek için kullanılabilir.

    • Özel saklı yordamlarda otomatik olarak yeniden değil, schema_change_script bu saklı yordamları yeniden kullanılabilir ya da kullanıcı tanımlı özel oluşturmak için saklı yordamlar.

  • @ force_invalidate_snapshot = force_invalidate_snapshot
    Etkinleştirir veya bir anlık görüntüsünü geçersiz kılınan yeteneği devre dışı bırakır. force_invalidate_snapshotolan bir bit, varsayılan 1.

    1 belirtir makaleyi değişiklikleri anlık geçersiz neden olabilir ve bu durumda, değer olarak ise 1 yeni anlık görüntü ortaya izni verir.

    0 makaleyi değişiklikleri anlık geçersiz neden olmaz belirtir.

  • @ force_reinit_subscription = force_reinit_subscription
    Etkinleştirir veya abonelik reinitializated yeteneği devre dışı bırakır. force_reinit_subscriptionolan bir bitvarsayılan ile 0.

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

    1 makale değişiklikleri abonelik yeniden neden olabileceğini belirtir ve bu durumda, değer olarak ise 1 ve abonelik reinitialization yapılmasına izin verir.

Dönüş Kodu Değerleri

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

Açıklamalar

sp_repladdcolumnonaylanmaz ve -yalnızca geriye dönük uyumluluk için sağlanır. Bir sütun için bir yinelenen tablo makale ekleme, veri tanımlama dili (ddl) komutlarını yayımlanmış tablo karşı yürüterek yapılmalıdır. Etkin ddl çoğaltma sürece çoğaltma aşağıdaki ddl komutlar otomatik olarak çoğaltır. Daha fazla bilgi için, bkz. Yayını veritabanları üzerinde şeması değişiklikler yapmak.

sp_repladdcolumnddl değişiklikleri bir önceki sürümünü çalıştıran aboneleri yeniden yayınlama gelen yayılıyor hala gerekli olduğunu SQL Server 2000aboneleri.

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

Kullanırken sp_repladdcolumn, bir veri Dönüştürme Hizmetleri (dts) paketi, şema değişikliği değil yayılma abone ve özel yordamlar INSERT/update/delete için kullanan aboneleri yeniden değil yayın ait bir makale şema değişikliği yapılırsa. Kullanıcı, dts paketini el ile yeniden ve karşılık gelen şema aboneleri değişiklik yapmak gerekiyor. Şema Güncelleştirmesi uygulanmamış, dağıtım aracı sonraki değişiklikleri uygulamak başarısız olabilir. Şema değişikliği yapmadan önce teslim edilmesini bekleyen hiçbir hareket emin olun.

Ne zaman typetextnondeterministic işlevi varsayılan değeri atanır (örneğin, 'datetime null default getdate()'), yakınsaması işlevi sütuna varsayılan bir değer yüklemek için abone adresindeki yürütülür çünkü yeni sütun ekledikten sonra oluşabilir.

Zaman damgası ve hesaplanan sütunları karakter modu yayınlar için filtre uygulanır. Eğer bir zaman damgası veya hesaplanan sütun ekleme sp_repladdcolumn, bu tür yayınları abonelikleri bu yeni sütun almazsınız.

Önemli notÖnemli

Yayını veritabanı yedeğini sonra yapılmalıdır sp_repladdcolumnçalıştırıldı. Aksi takdirde bir yayın veritabanı geri yükledikten sonra bir birleştirme başarısız olmasına neden olabilir.

İzinler

Yalnızca üyeleri sysadminsabit sunucu rolü ve db_ownersabit veritabanı rolü yürütebilirsiniz sp_repladdcolumn.

Ayrıca bkz.

Başvuru

Sistem saklı yordamları (Transact-sql)

Kavramlar

SQL Server çoğaltma onaysız özellikleri