Aracılığıyla paylaş


sp_addmergesubscription (Transact-sql)

İtme veya çekme birleştirme abonelik oluşturur. Bu saklı yordam, yayını veritabanı üzerinde yayımcı adresindeki yürütülür.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

sp_addmergesubscription [ @publication= ] 'publication'
    [ , [ @subscriber = ] 'subscriber' ]
    [ , [ @subscriber_db= ] 'subscriber_db' ]
    [ , [ @subscription_type= ] 'subscription_type' ]
    [ , [ @subscriber_type= ] 'subscriber_type' ]
    [ , [ @subscription_priority= ] subscription_priority ]
    [ , [ @sync_type= ] 'sync_type' ]
    [ , [ @frequency_type= ] frequency_type ]
    [ , [ @frequency_interval= ] frequency_interval ]
    [ , [ @frequency_relative_interval= ] frequency_relative_interval ]
    [ , [ @frequency_recurrence_factor= ] frequency_recurrence_factor ]
    [ , [ @frequency_subday= ] frequency_subday ]
    [ , [ @frequency_subday_interval= ] frequency_subday_interval ]
    [ , [ @active_start_time_of_day= ] active_start_time_of_day ]
    [ , [ @active_end_time_of_day= ] active_end_time_of_day ]
    [ , [ @active_start_date= ] active_start_date ]
    [ , [ @active_end_date= ] active_end_date ]
    [ , [ @optional_command_line= ] 'optional_command_line' ]
    [ , [ @description= ] 'description' ]
    [ , [ @enabled_for_syncmgr= ] 'enabled_for_syncmgr' ]
    [ , [ @offloadagent= ] remote_agent_activation]
    [ , [ @offloadserver= ] 'remote_agent_server_name' ]
    [ , [ @use_interactive_resolver= ] 'use_interactive_resolver' ]
    [ , [ @merge_job_name= ] 'merge_job_name' ]
    [ , [ @hostname = ] 'hostname'

Bağımsız değişkenler

  • @ publication ='publication'
    Yayını addır. publicationise sysname, hiçbir varsayılan ile. Basım önceden mevcut olmalıdır.

  • @ abone ='subscriber'
    Abone addır. subscriberise sysname, null varsayılan.

  • @ subscriber_db ='subscriber_db'
    Abonelik veritabanı adıdır. subscriber_db* *ise sysname, null varsayılan.

  • @ subscription_type ='subscription_type'
    Abonelik türü olduğunu. subscription_type* *ise nvarchar(15), null varsayılan. Eğer push, itme abonelik eklenir ve Birleştirme Aracısı dağıtımcı eklenir. Eğer pull, bir çekme abonelik Birleştirme Aracısı dağıtımcı eklemeden eklenir.

    [!NOT]

    Anonim abonelikleri bu saklı yordam kullanmanız gerekmez.

  • @ subscriber_type ='subscriber_type'
    Abone türüdür. subscriber_typeise nvarchar(15), ve aşağıdaki değerlerden biri olabilir.

    Değer

    Açıklama

    local(varsayılan)

    Publisher yalnızca bilinen abone.

    global

    Tüm sunucular için bilinen abone.

    İçinde SQL Server 2005ve sonraki sürümleri, Yerel Abonelikleri istemci abonelikleri adlandırılır ve küresel abonelikleri sunucu abonelikleri adlandırılır

  • **@ subscription_priority =*subscription_priority
    Abonelik önceliği gösteren sayı. subscription_priority
     *ise real, null varsayılan. Yerel ve anonim abonelikleri için 0.0 önceliktir. Küresel abonelikleri için az 100.0 önceliği olmalıdır.

  • @sync_type='sync_type'
    Abonelik eşitleme türüdür. sync_typeise nvarchar(15), varsayılan automatic. Can be automatic or none. Eğer automatic, şema ve yayımlanmış tablolar için ilk veri için abone ilk transfer. Eğer none, abone zaten şema ve yayımlanmış tablolar için ilk veri varsayılır. Sistem tablolarını ve veri her zaman aktarılır.

    [!NOT]

    İçin bir değer belirterek değil öneririz none.

  • **@ frequency_type =**frequency_type
    Birleştirme aracı çalıştırıldığında gösteren bir değer. frequency_typeise int, ve aşağıdaki değerlerden biri olabilir.

    Değer

    Açıklama

    1

    Bir kez

    4

    Günlük

    8

    Haftalık

    10

    Aylık

    20

    Frekans aralığı göreli olarak aylık

    40

    Ne zaman SQL ServerAgent başlatır

    NULL (varsayılan)

     

  • **@ frequency_interval =**frequency_interval
    Gün veya gün Birleştirme Aracısı çalıştırır. frequency_intervalise int, ve aşağıdaki değerlerden biri olabilir.

    Değer

    Açıklama

    1

    Pazar

    2

    Pazartesi

    3

    Salı

    4

    Çarşamba

    5

    Perşembe

    6

    Cuma

    7

    Cumartesi

    8

    Gün

    9

    Hafta içi

    10

    Hafta sonunu

    NULL (varsayılan)

     

  • **@ frequency_relative_interval =**frequency_relative_interval
    Frekans aralığı zamanlanan birleştirme geçtiği her ay olduğunu. frequency_relative_intervalise int, ve bu değerlerden birini olabilir.

    Değer

    Açıklama

    1

    First

    2

    İkinci

    4

    Üçüncü

    8

    Dördüncü

    16

    Last

    NULL (varsayılan)

     

  • **@ frequency_recurrence_factor =*frequency_recurrence_factor
    Tarafından kullanılan yineleme faktörü olduğunu frequency_type. frequency_recurrence_factor
     *ise int, null varsayılan.

  • **@ frequency_subday =**frequency_subday
    Birim için frequency_subday_interval. frequency_subdayise int, ve aşağıdaki değerlerden biri olabilir.

    Değer

    Açıklama

    1

    Bir kez

    2

    İkinci

    4

    Dakika

    8

    Saat

    NULL (varsayılan)

     

  • **@ frequency_subday_interval =**frequency_subday_interval
    Frekans için frequency_subdayHer birleştirme arasında gerçekleşmesi için. frequency_subday_intervalise int, null varsayılan.

  • **@ active_start_time_of_day =**active_start_time_of_day
    Ne zaman birleştirme aracı ilk günün saati SSDDSS biçimlendirilmiş planlanmıştır. active_start_time_of_dayise int, null varsayılan.

  • **@ active_end_time_of_day =**active_end_time_of_day
    Birleştirme Aracısı durduğunda günün saati zamanlanmış SSDDSS biçimlendirilmiş. active_end_time_of_dayise int, null varsayılan.

  • **@ active_start_date =**active_start_date
    Ne zaman birleştirme aracı ilk tarih YYYYMMDD'nın biçimlendirilmiş planlanmıştır. active_start_dateise int, null varsayılan.

  • **@ active_end_date =**active_end_date
    Birleştirme Aracısı durduğunda tarih zamanlanmış YYYYMMDD'nın biçimlendirilmiş. active_end_dateise int, null varsayılan.

  • @ optional_command_line ='optional_command_line'
    İsteğe bağlı komut yürütmek için olduğunu. optional_command_line* *ise nvarchar(4000), null varsayılan. Bu parametre, çıkış yakalar ve bir dosyaya kaydeder bir komut eklemek veya bir konfigürasyon dosyası veya öznitelik belirtmek için kullanılır.

  • @ description ='description'
    Bu birleştirme abonelik kısa bir açıklaması bulunur. description* *ise nvarchar(255), null varsayılan. Bu değer tarafından Çoğaltma İzleyicisi'nde görüntülenen Kolay ad izlenen yayın abonelikleri sıralamak için kullanılan sütun.

  • @ enabled_for_syncmgr ='enabled_for_syncmgr'
    Abonelik üzerinden eşitlenebilir belirtir MicrosoftWindows Eşitleme Yöneticisi'nin. enabled_for_syncmgrise nvarchar(5), false varsayılan. Eğer false, abonelik Eşitleme Yöneticisi ile kayıtlı değil. Eğer true, abonelik Eşitleme Yöneticisi ile kayıtlı ve başlatmadan eşitlenebilir Microsoft   SQL Server Management Studio.

  • @ offloadagent = remote_agent_activation
    Aracı uzaktan etkinleştirilebilir belirtir. remote_agent_activationise bitvarsayılan ile 0.

    [!NOT]

    Bu parametre onaylanmaz ve yalnızca komut dosyaları geriye dönük uyumluluk için korunur.

  • @ offloadserver = 'remote_agent_server_name'
    Uzaktaki aracı etkinleştirme için kullanılan sunucu ağ adını belirtir. remote_agent_server_name* *ise sysname, null varsayılan.

  • @ use_interactive_resolver = 'use_interactive_resolver'
    Tüm makaleler için etkileşimli çözümleme sağlayan etkileşimli olarak çözümlenmesi çakışmaları sağlar. use_interactive_resolverise nvarchar(5), false varsayılan.

  • @ merge_job_name = 'merge_job_name'
    @merge\_job\_nameParametre önerilmiyor ve ayarlanamaz. merge_job_nameise sysname, null varsayılan.

  • @hostname= ] 'hostname'
    Tarafından döndürülen değeri geçersiz kılar host_name zaman bu işlev parametreli filtre where yan tümcesinde kullanılır. Hostname ise sysname, null varsayılan.

    Önemli notÖnemli

    Performansı düşürmemek için işlev Parametreli satır filtre yan tümceleri, sütun adları gibi uyguladığınız değil öneririz LEFT([MyColumn]) = SUSER_SNAME(). Eğer sen kullanma host_name bir filtre yan tümcesi ve geçersiz değer veri türleri kullanarak dönüştürmek gerekli olabilir DÖNÜŞTÜRMEK. Bu durum için en iyi yöntemler hakkında daha fazla bilgi için bkz: Bölüm "host_name() değeri geçersiz kılma" konudaki Parametreli satır süzgeçleri.

Dönüş Kodu Değerleri

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

Açıklamalar

sp_addmergesubscription birleştirme çoğaltması kullanılır.

Ne zaman sp_addmergesubscription bir üyesi tarafından yürütülen sysadmin sabit sunucu rolü bir itme abonelik oluşturmak için Birleştirme Aracısı iş örtük olarak oluşturulur ve altında çalışan SQL ServerAgent hizmet hesabı. Eğer yürütme öneririz sp_addmergepushsubscription_agent ve farklı, ajan özel bir Windows hesabı için kimlik bilgilerini belirtin @ job_login ve @ job_password. Daha fazla bilgi için, bkz. Çoğaltma aracısı güvenlik modeli.

Örnek

-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables  
-- on the command line and in SQL Server Management Studio, see the 
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".

DECLARE @publication AS sysname;
DECLARE @subscriber AS sysname;
DECLARE @subscriptionDB AS sysname;
DECLARE @hostname AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
SET @subscriber = $(SubServer);
SET @subscriptionDB = N'AdventureWorksReplica'; 
SET @hostname = N'adventure-works\david8'

-- Add a push subscription to a merge publication.
USE [AdventureWorks2012];
EXEC sp_addmergesubscription 
  @publication = @publication, 
  @subscriber = @subscriber, 
  @subscriber_db = @subscriptionDB, 
  @subscription_type = N'push',
  @hostname = @hostname;

--Add an agent job to synchronize the push subscription.
EXEC sp_addmergepushsubscription_agent 
  @publication = @publication, 
  @subscriber = @subscriber, 
  @subscriber_db = @subscriptionDB, 
  @job_login = $(Login), 
  @job_password = $(Password);
GO

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü yürütebilirsiniz sp_addmergesubscription.

Ayrıca bkz.

Başvuru

sp_changemergesubscription (Transact-sql)

sp_dropmergesubscription (Transact-sql)

sp_helpmergesubscription (Transact-sql)

Kavramlar

Itme abonelik oluşturma

Çekme abonelik oluştur

Etkileşimli çakışma çözümleme

Yayınlara abone