Udostępnij za pośrednictwem


sp_addmergepublication (języka Transact-SQL)

Tworzy nowy plik publikacja korespondencji seryjnej.Ta procedura składowana jest wykonywany na Wydawca na bazie jest publikowana.

Ikona łącza do tematuKonwencje składni Transact-SQL

Składnia

sp_addmergepublication [ @publication = ] 'publication' 
    [ , [ @description = ] 'description' 
    [ , [ @retention = ] retention ] 
    [ , [ @sync_mode = ] 'sync_mode' ] 
    [ , [ @allow_push = ] 'allow_push' ] 
    [ , [ @allow_pull = ] 'allow_pull' ] 
    [ , [ @allow_anonymous = ] 'allow_anonymous' ] 
    [ , [ @enabled_for_internet = ] 'enabled_for_internet' ] 
    [ , [ @centralized_conflicts = ] 'centralized_conflicts' ] 
    [ , [ @dynamic_filters = ] 'dynamic_filters' ] 
    [ , [ @snapshot_in_defaultfolder = ] 'snapshot_in_default_folder' ] 
    [ , [ @alt_snapshot_folder = ] 'alternate_snapshot_folder' ] 
    [ , [ @pre_snapshot_script = ] 'pre_snapshot_script' ] 
    [ , [ @post_snapshot_script = ] 'post_snapshot_script' ] 
    [ , [ @compress_snapshot = ] 'compress_snapshot' ] 
    [ , [ @ftp_address = ] 'ftp_address' ] 
    [ , [ @ftp_port = ] ftp_port ] 
    [ , [ @ftp_subdirectory = ] 'ftp_subdirectory' ] 
    [ , [ @ftp_login = ] 'ftp_login' ] 
    [ , [ @ftp_password = ] 'ftp_password' ] 
    [ , [ @conflict_retention = ] conflict_retention ] 
    [ , [ @keep_partition_changes = ] 'keep_partition_changes' ] 
    [ , [ @allow_subscription_copy = ] 'allow_subscription_copy' ] 
    [ , [ @allow_synctoalternate = ] 'allow_synctoalternate' ] 
    [ , [ @validate_subscriber_info = ] 'validate_subscriber_info' ] 
    [ , [ @add_to_active_directory = ] 'add_to_active_directory' ] 
    [ , [ @max_concurrent_merge = ] maximum_concurrent_merge ] 
    [ , [ @max_concurrent_dynamic_snapshots = ] max_concurrent_dynamic_snapshots ]
    [ , [ @use_partition_groups = ] 'use_partition_groups' ]
    [ , [ @publication_compatibility_level = ] 'backward_comp_level' ]
    [ , [ @replicate_ddl = ] replicate_ddl ]
    [ , [ @allow_subscriber_initiated_snapshot = ] 'allow_subscriber_initiated_snapshot' ] 
    [ , [ @allow_web_synchronization = ] 'allow_web_synchronization' ] 
    [ , [ @web_synchronization_url = ] 'web_synchronization_url' ]
    [ , [ @allow_partition_realignment = ] 'allow_partition_realignment' ]
    [ , [ @retention_period_unit = ] 'retention_period_unit' ]
    [ , [ @generation_leveling_threshold = ] generation_leveling_threshold ]
    [ , [ @automatic_reinitialization_policy = ] automatic_reinitialization_policy ]
    [ , [ @conflict_logging = ] 'conflict_logging' ]

Argumenty

  • [ @ publikacja = 'publication"
    Is the name of the merge publication to create.publication is sysname, with no default, and must not be the keyword ALL.Nazwa publikacja musi być unikatowa w bazie danych.

  • [ @ Opis = 'description"
    Is the publication description.description is nvarchar(255), with a default of NULL.

  • [ @ retencji = retention
    Is the retention period, in retention period units, for which to save changes for the given publication.retention is int, with a default of 14 units.Jednostki okresu przechowywania są definiowane przez retention_period_unit.Jeśli subskrypcja nie jest zsynchronizowane w okresie zachowywania i oczekujące zmiany, czy otrzymały zostały usunięte przez operację oczyszczania na dystrybutora, subskrypcja wygasa i należy ponownie zainicjować.Okres zachowywania maksymalny dopuszczalny jest liczba dni między gru.31, 9999 a data bieżącą.

    Ostrzeżenie

    Okres zachowywania dla publikacji seryjnej ma 24-godzinny okres prolongaty, aby pomieścić subskrybentów w różnych czas stref.Jeżeli, na przykład zestaw okres zachowywania jednego dnia okresu przetrzymania rzeczywisty wynosi 48 godzin.

  • [ @ sync_mode = 'sync_mode"
    Is the mode of the initial synchronization of subscribers to the publication.sync_mode is nvarchar(10), and can be one of the following values.

    Wartość

    Opis

    macierzysta (domyślnie)

    Generuje dane wyjściowe programu kopiowanie masowe trybu macierzystego wszystkich tabel.

    znak

    Tryb znakowy daje kopiowanie masowe program wyjście wszystkich tabel.Required to support Microsoft SQL Server Compact 3.5 z dodatkiem SP1 and non-SQL Server Subscribers.

  • [ @ allow_push = 'allow_push"
    Specifies if push subscriptions can be created for the given publication.allow_push is nvarchar(5), with a default of TRUE, which allows push subscriptions on the publication.

  • [ @ allow_pull = 'allow_pull"
    Specifies if pull subscriptions can be created for the given publication.allow_pull is nvarchar(5), with a default of TRUE, which allows pull subscriptions on the publication.Należy określić wartość PRAWDA, aby obsługa SQL Server Compact 3.5 z dodatkiem SP1 abonentów.

  • [ @ allow_anonymous = 'allow_anonymous"
    Specifies if anonymous subscriptions can be created for the given publication.allow_anonymous is nvarchar(5), with a default of TRUE, which allows anonymous subscriptions on the publication.Do obsługi SQL Server Compact 3.5 z dodatkiem SP1 abonentów, należy określić true.

  • [ @ enabled_for_internet = 'enabled_for_internet"
    Specifies if the publication is enabled for the Internet, and determines if file transfer protocol (FTP) can be used to transfer the snapshot files to a subscriber.enabled_for_internet is nvarchar(5), with a default of FALSE.Jeśli true, pliki synchronizacji w publikacja są umieszczane w katalogu C:\Program Files\Microsoft SQL Server\MSSQL\MSSQL.x\Repldata\Ftp.Użytkownik musi utworzyć katalog Ftp.Jeśli false, publikacja nie jest włączone dla dostępu do Internetu.

  • [ @ centralized_conflicts = 'centralized_conflicts"
    Ten parametr zaniechano i jest obsługiwany tylko dla zgodności ze starszymi wersjami skryptów.Użyj conflict_logging do określenia lokalizacji przechowywania rekordy konfliktowe.

  • [ @ dynamic_filters = 'dynamic_filters"
    Enables the merge publication to use parameterized row filters.dynamic_filters is nvarchar(5), with a default of FALSE.

    Ostrzeżenie

    Powinien nie określono tego parametru, ale zamiast pozwolić SQL Server ustalenie automatycznie, jeśli opatrzone są używane filtry wierszy.Jeżeli określono wartość true dla dynamic_filters, należy zdefiniować sparametryzowany filtr wierszy dla artykuł.Aby uzyskać więcej informacji, zobacz Jak Definiowanie i modyfikowanie filtru sparametryzowana wiersz artykuł korespondencji seryjnej (Programowanie replikacji Transact-SQL).

  • [ @ snapshot_in_defaultfolder = 'snapshot_in_default_folder"
    Specifies if the snapshot files are stored in the default folder.snapshot_in_default_folder is nvarchar(5), with a default of TRUE.Jeśli true, migawka pliki można znaleźć w folderze domyślnym.Jeśli false, migawka pliki będą przechowywane w alternatywnej lokalizacji określonej przez alternate_snapshot_folder.Alternatywnej lokalizacji może być na innym serwerze, dysk sieciowy lub nośników wymiennych (takich jak CD-ROM lub dyski wymienne).Można także zapisać migawkę plików do witryny File Transfer Protocol (FTP), pobierania przez abonenta w późniejszym czas.Należy zauważyć, że ten parametr może być wartość true i nadal mieć lokalizacji określonej przez alt_snapshot_folder.Ta kombinacja Określa, że pliki migawka będą przechowywane w lokalizacji alternatywnej i domyślne.

  • [ @ alt_snapshot_folder = 'alternate_snapshot_folder"
    Specifies the location of the alternate folder for the snapshot.alternate_snapshot_folder is nvarchar(255), with a default of NULL.

  • [ @ pre_snapshot_script = 'pre_snapshot_script"
    Specifies a pointer to an .sql file location.pre_snapshot_script is nvarchar(255), with a default of NULL.Agent scalania będzie Uruchom skrypt pre-migawka przed jakimkolwiek skrypty replikowanych obiektów, stosując migawka na subskrybenta.Skrypt jest wykonywany w kontekście zabezpieczeń, używana przez agenta scalić podczas łączenia się z baza danych subskrypcja.Skrypty Pre-migawka nie są uruchamiane SQL Server Compact 3.5 z dodatkiem SP1 abonentów.

  • [ @ post_snapshot_script = 'post_snapshot_script"
    Specifies a pointer to an .sql file location.post_snapshot_script is nvarchar(255), with a default of NULL.Scalanie Agent działa skryptu post-migawka wszystkie skrypty replikowanych obiektów i dane zostały zastosowane podczas synchronizacja początkowa.Skrypt jest wykonywany w kontekście zabezpieczeń, używana przez agenta scalić podczas łączenia się z baza danych subskrypcja.Skrypty POST-migawka nie są uruchamiane SQL Server Compact 3.5 z dodatkiem SP1 abonentów.

  • [ @ compress_snapshot = 'compress_snapshot"
    Specifies that the snapshot written to the @alt_snapshot_folder location is to be compressed into the Microsoft CAB format.compress_snapshot is nvarchar(5), with a default of FALSE.false specifies that the snapshot will not be compressed; true specifies that the snapshot is to be compressed.Nie można skompresować migawkę plików większych niż 2 GB.Pliki skompresowane migawka skompresowano w miejscu, gdzie działa Agent scalanie; ściągaćSubskrypcje są zazwyczaj używane z migawkami skompresowanych, tak aby pliki nieskompresowane subskrybent.migawka w domyślnym folderze nie można skompresować.Do obsługi SQL Server Compact 3.5 z dodatkiem SP1 abonentów, należy określić false.

  • [ @ ftp_address = 'ftp_address"
    Is the network address of the FTP service for the Distributor.ftp_address is sysname, with a default of NULL.Określa, w którym znajdują się dla czynnika scalania publikacja migawka pliki subskrybent do pobrania.Ponieważ ta właściwość jest przechowywana w każdej publikacji, każda publikacja może mieć inną ftp_address.Publikacja musi obsługiwać rozmnożeniowy migawki za pomocą protokołu FTP.

  • [ @ ftp_port = ftp_port
    Is the port number of the FTP service for the Distributor.ftp_port is int, with a default of 21.Określa, w którym znajdują się dla czynnika Scal pliki migawka publikacja subskrybent do pobrania.Ponieważ ta właściwość jest przechowywana w każdej publikacji, każda publikacja może mieć własną ftp_port.

  • [ @ ftp_subdirectory = 'ftp_subdirectory"
    Specifies where the snapshot files will be available for the Merge Agent of the subscriber to pick up if the publication supports propagating snapshots using FTP.ftp_subdirectory is nvarchar(255), with a default of NULL.Ponieważ ta właściwość jest przechowywana w każdej publikacji, każda publikacja może mieć własną ftp_subdirctory lub wybrać opcję nie podkatalogu oznaczone wartość NULL.

    Po pre-generating migawek dla publikacji z filtrami sparametryzowana, migawka danych dla każdej partycji, abonent musi być w osobnym folderze.Struktura katalogu migawek wstępnie przy użyciu protokołu FTP musi przestrzegać następującą strukturę:

    alternate_snapshot_folder\ftp\publisher_publicationDB_publication\partitionID.

    Ostrzeżenie

    Wartości powyżej kursywą zależeć będzie od charakterystyki publikacja i subskrybenta partycji.

  • [ @ ftp_login = 'ftp_login"
    Is the username used to connect to the FTP service.ftp_login is sysname, with a default of 'anonymous'.

  • [ @ ftp_password = 'ftp_password"
    Is the user password used to connect to the FTP service.ftp_password is sysname, with a default of NULL.

    Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

    Nie należy używać pustego hasła.Należy używać silnego hasła.

  • [ @ conflict_retention = conflict_retention
    Specifies the retention period, in days, for which conflicts are retained.conflict_retention is int, with a default of 14 days before the conflict row is purged from the conflict table.

  • [ @ keep_partition_changes = 'keep_partition_changes"
    Specifies whether to enable partition change optimizations when precomputed partitions cannot be used.keep_partition_changes is nvarchar(5), with a default of TRUE.false means that partition changes are not optimized, and when precomputed partitions are not used, the partitions sent to all Subscribers will be verified when data changes in a partition.true means that partition changes are optimized, and only Subscribers having rows in the changed partitions are affected.Podczas korzystania z partycji precomputed zestaw use_partition_groups do true i zestaw keep_partition_changes do false.Aby uzyskać więcej informacji, zobacz Optymalizacja sparametryzowana wydajności filtr partycji Precomputed.

    Ostrzeżenie

    Jeżeli określono wartość true dla keep_partition_changes, określ wartość 1 dla parametru migawki agenta - maxnetworkoptimization.Aby uzyskać więcej informacji dotyczących tego parametru, zobacz Agent replikacji migawki.Aby uzyskać informacje dotyczące sposobu określania parametrów agent, zobacz Administrowanie agenci replikacji.

  • [ @allow_subscription_copy= ] 'allow_subscription_copy'
    Enables or disables the ability to copy the subscription databases that subscribe to this publication.allow_subscription_copy is nvarchar(5), with a default of FALSE.Rozmiar baza danych subskrypcja kopiowanego musi być mniejsza niż 2 gigabajty (GB).

  • [ @ allow_synctoalternate = 'allow_synctoalternate"
    Określone tylko w celach informacyjnych. Nieobsługiwane. Przyszła zgodność nie jest gwarantowana.

  • [ @ validate_subscriber_info = 'validate_subscriber_info"
    Lists the functions that are used to define a Subscriber partition of the published data when parameterized row filters are used.validate_subscriber_info is nvarchar(500), with a default of NULL.Te informacje są używane przez agenta scalania do sprawdzania partycji abonenta.Na przykład jeśli SUSER_SNAME używane w sparametryzowany filtr wierszy, powinny być parametr @validate_subscriber_info=N'SUSER_SNAME()'.

    Ostrzeżenie

    Powinien nie określono tego parametru, ale zamiast pozwolić SQL Server do automatycznie określić kryterium filtrowania.

  • [ @ add_to_active_directory = 'add_to_active_directory"
    Ten parametr zaniechano i jest obsługiwany tylko dla zgodności ze starszymi wersjami skryptów.Nie można dodawać informacje o publikacja do Microsoft usługi Active Directory.

  • [ @ max_concurrent_merge = maximum_concurrent_merge
    The maximum number of concurrent merge processes.maximum_concurrent_merge is int with a default of 0.Wartość 0 do tej właściwość oznacza, że nie jest ograniczona do liczby równoczesnych korespondencji seryjnej procesy uruchomione w dowolnym podane czas.Ta właściwość ustawia limit liczby procesów równoczesnych korespondencji seryjnej, uruchamiane przeciwko publikacja seryjnej w jednym czas.Jeśli nie ma więcej procesów seryjnej zaplanowane w tym samym czas niż wartość umożliwia uruchamianie, a następnie nadmiar zadania będą umieszczane w kolejce i zaczekaj, aż proces scalania aktualnie działającymi wykończenie.

  • [ @ max_concurrent_dynamic_snapshots = max_concurrent_dynamic_snapshots
    The maximum number of Snapshot Agent sessions that can be run concurrently to generate filtered data snapshots for Subscriber partitions.maximum_concurrent_dynamic_snapshots is int with a default of 0.Jeśli 0, jest nieograniczona liczba sesji migawka.Jeśli nie ma więcej procesów migawka zaplanowane w tym samym czas niż wartość umożliwia uruchamianie, a następnie nadmiar zadania będą umieszczane w kolejce i zaczekaj, aż proces migawkę aktualnie działającymi wykończenie.

  • [ @ use_partition_groups = 'use_partition_groups"
    Specifies that precomputed partitions should be used to optimize the synchronization process.use_partition_groups is nvarchar(5), and can be one of these values:

    Wartość

    Opis

    true

    Publikacja używa precomputed partycji.

    false

    Publikacja nie używać partycji precomputed.

    NULL(default)

    System zdecyduje się na partycjonowanie strategii.

    Precomputed partycje są używane domyślnie.Aby uniknąć używania partycji precomputed use_partition_groups musi być zestaw do false.Gdy wartość NULL, system zdecyduje, precomputed partycje mogą być używane.Jeśli wstępnie obliczone partycji nie może być używany, a następnie wartość ta skutecznie staną się false bez generowania żadnych błędów.W takich przypadkach keep_partition_changes zestaw na true do świadczenia niektórych optymalizacji.Aby uzyskać więcej informacji, zobacz Filtry parametrami wiersza i Optymalizacja sparametryzowana wydajności filtr partycji Precomputed.

  • [ @ publication_compatibility_level = backward_comp_level
    Indicates the backward compatibility of the publication.backward_comp_level is nvarchar(6), and can be one of these values:

    Wartość

    Wersja

    70RTM

    SQL Server 7.0

    70SP1

    SQL Server 7.0 Z dodatkiem Service Pack 1

    70SP2

    SQL Server 7.0 Z dodatkiem Service Pack 2

    70SP3

    SQL Server 7.0 Z dodatkiem Service Pack 3

    70SP4

    SQL Server 7.0 Z dodatkiem Service Pack 4

    80RTM

    SQL Server 2000

    80SP1

    SQL Server 2000 Dodatek Service Pack 1

    80SP2

    SQL Server 2000 Dodatek Service Pack 2

    80SP3

    SQL Server 2000 Dodatek Service Pack 3

    90RTM

    SQL Server 2005

    100RTM

    SQL Server 2008

  • [@ replicate_ddl = replicate_ddl
    Indicates if schema replication is supported for the publication.replicate_ddl is int, with a default of 1.1 wskazuje, że są replikowane instrukcji języka (DDL) definicja danych wykonywane przez wydawcę, i 0 wskazuje, że instrukcje DDL nie są replikowane.Aby uzyskać więcej informacji, zobacz Wprowadzanie zmian schematu na publikację baz danych.

  • [ @ allow_subscriber_initiated_snapshot = 'allow_subscriber_initiated_snapshot"
    Indicates if Subscribers to this publication can initiate the snapshot process to generate the filtered snapshot for their data partition.allow_subscriber_initiated_snapshot is nvarchar(5), with a default of FALSE.true indicates that Subscribers can initiate the snapshot process.

  • [ @ allow_web_synchronization = 'allow_web_synchronization"
    Specifies if the publication is enabled for Web synchronization.allow_web_synchronization is nvarchar(5), with a default of FALSE.true specifies that subscriptions to this publication can be synchronized over HTTPS.Aby uzyskać więcej informacji, zobacz Web synchronizacji replikacji scalania.Do obsługi SQL Server Compact 3.5 z dodatkiem SP1 abonentów, należy określić true.

  • [ @ web_synchronization_url = 'web_synchronization_url"
    Specifies the default value of the Internet URL used for Web synchronization.web_synchronization_url is nvarchar(500), with a default of NULL.Określa domyślny adres URL w Internecie, jeśli nie jest wyraźnie zestaw po sp_addmergepullsubscription_agent jest wykonywany.

  • [ @ allow_partition_realignment = 'allow_partition_realignment"
    Determines whether deletes are sent to the subscriber when modification of the row on the publisher causes it to change its partition.allow_partition_realignment is nvarchar(5), with a default of TRUE.true sends deletes to the Subscriber to reflect the results of a partition change by removing data that is no longer part of the Subscriber's partition.false leaves the data from an old partition on the Subscriber, where changes made to this data on the Publisher will not replicate to this Subscriber, but changes made on the Subscriber will replicate to the Publisher.Ustawienie allow_partition_realignment do false jest używana, aby zachować dane w subskrypcja z partycji starego po danych musi być dostępne do celów historycznych.

    Ostrzeżenie

    Dane, które pozostaje przez subskrybenta od ustawienia allow_partition_realignment do false powinny być traktowane, tak jakby był on tylko do odczytu; nie jest to jednak wymuszane przez system replikacja.

  • [ @ retention_period_unit = 'retention_period_unit"
    Specifies the units for the retention period set by retention.retention_period_unit is nvarchar(10), and can be one of the following values.

    Wartość

    Wersja

    dzień (domyślnie)

    Okres zachowywania jest określony w dniach.

    tydzień

    Okres zachowywania jest określona w tygodniach.

    miesiąc

    Okres zachowywania jest określona w miesiącach.

    rok

    Okres zachowywania podano w latach.

  • [ @generation_leveling_threshold= ] generation_leveling_threshold
    Określa liczbę zmian, które są zawarte w pokolenia.A generation is a collection of changes that are delivered to a Publisher or Subscriber.generation_leveling_threshold is int, with a default value of 1000.Aby uzyskać więcej informacji, zobacz Sposób scalania replikacji śledzi i wylicza zmian.

  • [ @ automatic_reinitialization_policy = automatic_reinitialization_policy
    Specifies whether changes are uploaded from the Subscriber before an automatic reinitialization required by a change to the publication, where a value of 1 was specified for @force_reinit_subscription.automatic_reinitialization_policy is bit, with a default value of 0.1 oznacza, że zmiany są przekazywane od subskrybenta przed wystąpieniem automatycznego ponownego inicjowania.

    Ważna informacjaWażne:

    Jeśli dodawanie, drop lub zmienić filtr sparametryzowana oczekujące zmiany subskrybent nie można przekazać do Wydawca podczas ponownego inicjowania.Jeśli chcesz przekazać oczekujące zmiany, należy zsynchronizować wszystkie subskrypcje przed zmianą filtru.

  • [ @ conflict_logging = 'conflict_logging"
    Specifies where conflict records are stored.conflict_logging is nvarchar(15), and can be one of the following values:

    Wartość

    Opis

    Program Publisher

    Konflikt rekordy są przechowywane w Wydawca.

    Subskrybent

    Konflikt rekordy są przechowywane przez subskrybenta, które spowodowało konflikt.Nie obsługiwany dla SQL Server Compact 3.5 z dodatkiem SP1 abonentów.

    oba

    Konflikt rekordy są przechowywane w obu Wydawca i abonenta.

    NULL(default)

    Replikacji automatycznie ustawia conflict_logging do zarówno , gdy wartość backward_comp_level jest 90RTM i wydawcy we wszystkich innych przypadkach.

Wartości kodów powrotnych

0 (sukces) lub 1 (błąd)

Uwagi

sp_addmergepublication używane w replikacja scalająca.

Do listy obiektów publikacja do usługi Active Directory przy użyciu @ add_to_active_directory parametru SQL Server obiektu musi być już utworzony w usłudze Active Directory.

Jeśli istnieje wiele publikacji, publikowania tego samego obiektu bazy danych tylko publikacje z replicate_ddl wartość 1 zreplikuje instrukcji ALTER TABLE, ALTER VIEW, ALTER PROCEDURE, ALTER funkcji i zmienić WYZWALACZ DDL.Jednak instrukcja ALTER tabeli UPUSZCZANIA kolumna DDL będzie replikowany przez wszystkie publikacje, które publikujesz porzuconych kolumna.

Dla SQL Server Compact 3.5 z dodatkiem SP1 abonentów, wartość alternate_snapshot_folder jest używane, gdy wartość snapshot_in_default_folder jest false.

With DDL replication enabled (replicate_ddl**=1**) for a publication, in order to make non-replicating DDL changes to the publication, sp_changemergepublication (języka Transact-SQL) must first be executed to set replicate_ddl to 0.Po wydaniu instrukcji DDL replikowanie sp_changemergepublication , można uruchomić ponownie włączyć DDL replikacja ponownie.

Przykład

-- To avoid storing the login and password in the script file, the value 
-- is passed into SQLCMD as a scripting variable. 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".

--Declarations for adding a merge publication
DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
DECLARE @login AS sysname;
DECLARE @password AS sysname;
SET @publicationDB = N'AdventureWorks2008R2'; 
SET @publication = N'AdvWorksSalesOrdersMerge'; 
SET @login = $(Login);
SET @password = $(Password);

-- Enable merge replication on the publication database, using defaults.
USE master
EXEC sp_replicationdboption 
  @dbname=@publicationDB, 
  @optname=N'merge publish',
  @value = N'true' 

-- Create a new merge publication, explicitly setting the defaults. 
USE [AdventureWorks2008R2]
EXEC sp_addmergepublication 
-- These parameters are optional.
  @publication = @publication,
  -- optional parameters 
  @description = N'Merge publication of AdventureWorks2008R2.',
  @publication_compatibility_level  = N'90RTM';

-- Create a new snapshot job for the publication.
EXEC sp_addpublication_snapshot 
  @publication = @publication, 
  @job_login = @login, 
  @job_password = @password;
GO

Uprawnienia

Tylko członkowie sysadmin stała rola serwera lub db_owner ustaloną rola bazy danych można wykonać sp_addmergepublication.