Aracılığıyla paylaş


sp_repladdcolumn (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL Yönetilen Örneği

Yayımlanmış olan bir tablo makalesine sütun ekler. Yeni sütunun bu tabloyu yayımlayan tüm yayımcılara eklenmesine izin verir veya yalnızca sütunu tabloyu yayımlayan belirli bir yayına ekler. Bu saklı yordam yayın veritabanındaki Publisher'da yürütülür.

Önemli

Bu saklı yordam kullanım dışıdır ve geriye dönük uyumluluk için desteklenmektedir. Yalnızca SQL Server 2000 (8.x) Yayımcıları ve ABONELERI yeniden yayımlayan SQL Server 2000 (8.x) ile kullanılmalıdır. Bu yordam, SQL Server 2005 (9.x) ve sonraki sürümlerde tanıtılan veri türlerine sahip sütunlarda kullanılmamalıdır.

Transact-SQL söz dizimi kuralları

Sözdizimi

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

Arguments

[ @source_object = ] N'source_object'

Eklenecek yeni sütunu içeren tablo makalesinin adı. @source_objectnvarchar(358)'dir ve varsayılan değer yoktur.

[ @column = ] N'column'

Çoğaltma için eklenecek tablodaki sütunun adı. @columnsysname'dir ve varsayılan değer yoktur.

[ @typetext = ] N'typetext'

Eklenen sütunun tanımı. @typetextnvarchar(3000)'dir ve varsayılan değer yoktur. Örneğin, sütun order_filled ekleniyorsa ve null değil tek karakterli bir alansa ve varsayılan N değerine sahipse order_filledsütun parametresi olurken, sütunun tanımı olan char(1) NOT NULL CONSTRAINT constraint_name DEFAULT 'N'@typetext parametre değeri olacaktır.

[ @publication_to_add = ] N'publication_to_add'

Yeni sütunun eklendiği yayının adı. @publication_to_addnvarchar(4000), varsayılan değeri all. ise all, bu tabloyu içeren tüm yayınlar etkilenir. @publication_to_add belirtilirse, yalnızca bu yayında yeni sütun eklenir.

[ @from_agent = ] from_agent

Saklı yordamın bir çoğaltma aracısı tarafından yürütülürken olup olmadığını belirtir. @from_agent, varsayılan değeri olan int'tir0. Değeri 1 , bu saklı yordam bir çoğaltma aracısı tarafından yürütülürken kullanılır ve diğer her durumda varsayılan değeri 0 kullanılmalıdır.

[ @schema_change_script = ] N'schema_change_script'

Sistem tarafından oluşturulan özel saklı yordamları değiştirmek için kullanılan SQL Server betiğinin adını ve yolunu belirtir. @schema_change_scriptnvarchar(4000), varsayılan değeri NULL. Çoğaltma, kullanıcı tanımlı özel saklı yordamların işlem çoğaltmasında kullanılan varsayılan yordamlardan birini veya daha fazlasını değiştirmesine olanak tanır. @schema_change_script kullanılarak çoğaltılan tablo makalesinde sp_repladdcolumnşema değişikliği yapıldıktan sonra yürütülür ve aşağıdaki gibi kullanılabilir:

  • Özel saklı yordamlar otomatik olarak yeniden oluşturulursa, @schema_change_script bu özel saklı yordamları bırakmak ve bunları yeni şemayı destekleyen kullanıcı tanımlı özel saklı yordamlarla değiştirmek için kullanılabilir.

  • Özel saklı yordamlar otomatik olarak yeniden oluşturulmazsa, @schema_change_script bu saklı yordamları yeniden oluşturmak veya kullanıcı tanımlı özel saklı yordamlar oluşturmak için kullanılabilir.

[ @force_invalidate_snapshot = ] force_invalidate_snapshot

Anlık görüntünün geçersiz kılınabilmesini etkinleştirir veya devre dışı bırakır. @force_invalidate_snapshotbittir ve varsayılan değeridir 1.

  • 1 , makalede yapılan değişikliklerin anlık görüntünün geçersiz olmasına neden olabileceğini belirtir ve böyle bir durumda değeri yeni 1 anlık görüntünün gerçekleşmesi için izin verir.

  • 0 , makalede yapılan değişikliklerin anlık görüntünün geçersiz olmasını neden olmadığını belirtir.

[ @force_reinit_subscription = ] force_reinit_subscription

Aboneliğin yeniden başlatılmasını sağlar veya devre dışı bırakır. @force_reinit_subscriptionbittir ve varsayılan değeridir 0.

  • 0 makaledeki değişikliklerin aboneliğin yeniden başlatılmasına neden olmadığını belirtir.

  • 1 makalede yapılan değişikliklerin aboneliğin yeniden başlatılmasına neden olabileceğini ve böyle bir durumda değerinin 1 abonelik yeniden başlatması için izin verdiğini belirtir.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Permissions

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