sp_addmergearticle (Transact-SQL)sp_addmergearticle (Transact-SQL)

SI APPLICA A: sìSQL Server (a partire dalla versione 2008) noDatabase SQL di Azure noAzure SQL Data Warehouse noParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2008) noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Aggiunge un articolo a una pubblicazione di tipo merge esistente.Adds an article to an existing merge publication. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.This stored procedure is executed at the Publisher on the publication database.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintassiSyntax


sp_addmergearticle [ @publication = ] 'publication'   
        , [ @article = ] 'article'   
        , [ @source_object = ] 'source_object'   
    [ , [ @type = ] 'type' ]   
    [ , [ @description = ] 'description' ]   
    [ , [ @column_tracking = ] 'column_tracking' ]   
    [ , [ @status = ] 'status' ]   
    [ , [ @pre_creation_cmd = ] 'pre_creation_cmd' ]   
    [ , [ @creation_script = ] 'creation_script' ]   
    [ , [ @schema_option = ] schema_option ]   
    [ , [ @subset_filterclause = ] 'subset_filterclause' ]   
    [ , [ @article_resolver = ] 'article_resolver' ]   
    [ , [ @resolver_info = ] 'resolver_info' ]   
    [ , [ @source_owner = ] 'source_owner' ]   
    [ , [ @destination_owner = ] 'destination_owner' ]   
    [ , [ @vertical_partition = ] 'vertical_partition' ]   
    [ , [ @auto_identity_range = ] 'auto_identity_range' ]   
    [ , [ @pub_identity_range = ] pub_identity_range ]   
    [ , [ @identity_range = ] identity_range ]   
    [ , [ @threshold = ] threshold ]   
    [ , [ @verify_resolver_signature = ] verify_resolver_signature ]   
    [ , [ @destination_object = ] 'destination_object' ]   
    [ , [ @allow_interactive_resolver = ] 'allow_interactive_resolver' ]   
    [ , [ @fast_multicol_updateproc = ] 'fast_multicol_updateproc' ]   
    [ , [ @check_permissions = ] check_permissions ]   
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]  
    [ , [ @published_in_tran_pub = ] 'published_in_tran_pub' ]  
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]  
    [ , [ @logical_record_level_conflict_detection = ] 'logical_record_level_conflict_detection' ]  
    [ , [ @logical_record_level_conflict_resolution = ] 'logical_record_level_conflict_resolution' ]  
    [ , [ @partition_options = ] partition_options ]  
    [ , [ @processing_order = ] processing_order ]  
    [ , [ @subscriber_upload_options = ] subscriber_upload_options ]  
    [ , [ @identityrangemanagementoption = ] 'identityrangemanagementoption' ]  
    [ , [ @delete_tracking = ] delete_tracking ]  
    [ , [ @compensate_for_errors = ] 'compensate_for_errors' ]   
    [ , [ @stream_blob_columns = ] 'stream_blob_columns' ]  

ArgomentiArguments

[ @publication= ] 'pubblicazione'[ @publication= ] 'publication'
Nome della pubblicazione in cui è contenuto l'articolo.Is the name of the publication that contains the article. pubblicazione viene sysname, non prevede alcun valore predefinito.publication is sysname, with no default.

[ @article= ] 'articolo'[ @article= ] 'article'
Nome dell'articolo.Is the name of the article. Deve essere un nome univoco all'interno della pubblicazione.The name must be unique within the publication. articolo viene sysname, non prevede alcun valore predefinito.article is sysname, with no default. articolo deve essere nel computer locale che esegue MicrosoftMicrosoft SQL ServerSQL Servere devono essere conformi alle regole per gli identificatori.article must be on the local computer running MicrosoftMicrosoft SQL ServerSQL Server, and must conform to the rules for identifiers.

[ @source_object= ] 'source_object'[ @source_object= ] 'source_object'
Oggetto di database da pubblicare.Is the database object to be published. source_object viene sysname, non prevede alcun valore predefinito.source_object is sysname, with no default. Per altre informazioni sui tipi di oggetti che possono essere pubblicati tramite la replica di tipo merge, vedere pubblicare dati e oggetti di Database.For more information about the types of objects that can be published using merge replication, see Publish Data and Database Objects.

[ @type= ] 'tipo'[ @type= ] 'type'
Tipo di articolo.Is the type of article. tipo di viene sysname, il valore predefinito è tabella, e può essere uno dei valori seguenti.type is sysname, with a default of table, and can be one of the following values.

valoreValue DescriptionDescription
tabella (impostazione predefinita)table (default) Tabella con schema e dati.Table with schema and data. La tabella viene monitorata per determinare i dati da replicare.Replication monitors the table to determine data to be replicated.
Func schema solofunc schema only Funzione con solo schema.Function with schema only.
la vista indicizzata solo schemaindexed view schema only Vista indicizzata con solo schema.Indexed view with schema only.
proc schema soloproc schema only Stored procedure con solo schema.Stored procedure with schema only.
solo schema sinonimosynonym schema only Sinonimo con solo schema.Synonym with schema only.
solo schema della vistaview schema only Vista con solo schema.View with schema only.

[ @description= ] 'descrizione'[ @description= ] 'description'
Descrizione dell'articolo.Is a description of the article. Descrizione viene nvarchar(255, con un valore predefinito è NULL.description is nvarchar(255), with a default of NULL.

[ @column_tracking= ] 'column_tracking'[ @column_tracking= ] 'column_tracking'
Impostazione per il rilevamento a livello di colonna.Is the setting for column-level tracking. column_tracking viene nvarchar(10), con un valore predefinito è FALSE.column_tracking is nvarchar(10), with a default of FALSE. trueattivare il controllo delle colonne.trueturns on column tracking. false disattiva e mantiene il rilevamento dei conflitti a livello di riga.false turns off column tracking and leaves conflict detection at the row level. Se la tabella è già pubblicata in altre pubblicazioni di tipo merge, è necessario utilizzare lo stesso valore di rilevamento a livello di colonna utilizzato dagli articoli esistenti basati su questa tabella.If the table is already published in other merge publications, you must use the same column tracking value used by existing articles based on this table. Questo parametro è disponibile solo per gli articoli di tabelle.This parameter is specific to table articles only.

Nota

Se si utilizza il rilevamento a livello di riga per il rilevamento dei conflitti (impostazione predefinita), la tabella di base può includere fino a 1.024 colonne, che devono tuttavia essere filtrate dall'articolo in modo da pubblicare un massimo di 246 colonne.If row tracking is used for conflict detection (the default), the base table can include a maximum of 1,024 columns, but columns must be filtered from the article so that a maximum of 246 columns is published. Se viene utilizzato il rilevamento a livello di colonna, nella tabella di base possono essere incluse al massimo 246 colonne.If column tracking is used, the base table can include a maximum of 246 columns.

[ @status= ] 'stato'[ @status= ] 'status'
Stato dell'articolo.Is the status of the article. lo stato viene nvarchar(10), il valore predefinito è unsynced.status is nvarchar(10), with a default of unsynced. Se active, viene eseguito lo script di elaborazione iniziale per pubblicare la tabella.If active, the initial processing script to publish the table is run. Se unsynced, viene eseguito lo script di elaborazione iniziale per pubblicare la tabella alla successiva esecuzione dell'agente Snapshot.If unsynced, the initial processing script to publish the table is run at the next time the Snapshot Agent runs.

[ @pre_creation_cmd= ] 'pre_creation_cmd'[ @pre_creation_cmd= ] 'pre_creation_cmd'
Azione eseguita dal sistema se, quando si applica lo snapshot, la tabella esiste già nel Sottoscrittore.Specifies what the system is to do if the table exists at the subscriber when applying the snapshot. pre_creation_cmd viene nvarchar(10), e può essere uno dei valori seguenti.pre_creation_cmd is nvarchar(10), and can be one of the following values.

valoreValue DescriptionDescription
Nessunonone Se la tabella esiste già nel Sottoscrittore, non viene eseguita alcuna azione.If the table already exists at the Subscriber, no action is taken.
deletedelete Esegue un'operazione di eliminazione in base alla clausola WHERE del filtro di subset.Issues a delete based on the WHERE clause in the subset filter.
DROP (impostazione predefinita)drop (default) Elimina la tabella prima di ricrearla.Drops the table before re-creating it. Necessario per supportare MicrosoftMicrosoft SQL Server CompactSQL Server Compact sottoscrittori.Required to support MicrosoftMicrosoft SQL Server CompactSQL Server Compact Subscribers.
truncatetruncate Tronca la tabella di destinazione.Truncates the destination table.

[ @creation_script= ] 'creation_script'[ @creation_script= ] 'creation_script'
Percorso e nome di uno script facoltativo dello schema dell'articolo usato per creare l'articolo nel database di sottoscrizione.Is the path and name of an optional article schema script used to create the article in the subscription database. creation_script viene nvarchar(255, con un valore predefinito è NULL.creation_script is nvarchar(255), with a default of NULL.

Nota

Gli script di creazione non vengono eseguiti nei Sottoscrittori SQL Server CompactSQL Server Compact.Creation scripts are not run on SQL Server CompactSQL Server Compact Subscribers.

[ @schema_option= ] schema_option[ @schema_option= ] schema_option
Mappa di bit dell'opzione di generazione dello schema per l'articolo specificato.Is a bitmap of the schema generation option for the given article. schema_option viene binari (8) e può essere il | (OR bit per bit) prodotto di uno o più dei valori seguenti.schema_option is binary(8), and can be the | (Bitwise OR) product of one or more of these values.

valoreValue DescriptionDescription
0x000x00 Disabilita la creazione di script dell'agente Snapshot e utilizza lo script di creazione preliminare fornito lo schema definito in creation_script.Disables scripting by the Snapshot Agent and uses the provided schema precreation script defined in creation_script.
0x010x01 Genera le istruzioni per la creazione di oggetti (CREATE TABLE, CREATE PROCEDURE e così via).Generates the object creation (CREATE TABLE, CREATE PROCEDURE, and so on). Questo è il valore predefinito per gli articoli di stored procedure.This is the default value for stored procedure articles.
0x100x10 Genera un indice cluster corrispondente.Generates a corresponding clustered index. Anche se questa opzione non viene impostata, se sono già definiti in una tabella pubblicata, gli indici correlati alle chiavi primarie e i vincoli UNIQUE vengono generati.Even if this option is not set, indexes related to primary keys and UNIQUE constraints are generated if they are already defined on a published table.
0x200x20 Converte i tipi di dati definiti dall'utente (UDT) in tipi di dati di base nel Sottoscrittore.Converts user-defined data types (UDT) to base data types at the Subscriber. Questa opzione non può essere usata quando è presente un vincolo CHECK o DEFAULT su una colonna UDT, se una colonna UDT è inclusa nella chiave primaria o se una colonna calcolata fa riferimento a una colonna UDT.This option cannot be used when there is a CHECK or DEFAULT constraint on a UDT column, if a UDT column is part of the primary key, or if a computed column references a UDT column.
0x400x40 Genera indici non cluster corrispondenti.Generates corresponding nonclustered indexes. Anche se questa opzione non viene impostata, se sono già definiti in una tabella pubblicata, gli indici correlati alle chiavi primarie e i vincoli UNIQUE vengono generati.Even if this option is not set, indexes related to primary keys and UNIQUE constraints are generated if they are already defined on a published table.
0x800x80 Replica i vincoli PRIMARY KEY.Replicates PRIMARY KEY constraints. Vengono inoltre replicati tutti gli indici correlati al vincolo, anche se le opzioni 0x10 e 0x40 non sono abilitati.Any indexes related to the constraint are also replicated, even if options 0x10 and 0x40 are not enabled.
0x1000x100 Replica gli eventuali trigger dell'utente di un articolo di tabella.Replicates user triggers on a table article, if defined.
0x2000x200 Replica i vincoli FOREIGN KEY.Replicates FOREIGN KEY constraints. Se la tabella con riferimenti non fa parte di una pubblicazione, tutti i vincoli FOREIGN KEY in una tabella pubblicata non vengono replicati.If the referenced table is not part of a publication, all FOREIGN KEY constraints on a published table are not replicated.
0x4000x400 Replica i vincoli CHECK.Replicates CHECK constraints.
0x8000x800 Replica i valori predefiniti.Replicates defaults.
0x10000x1000 Replica le regole di confronto a livello di colonna.Replicates column-level collation.
0x20000x2000 Replica le proprietà estese associate all'oggetto di origine dell'articolo pubblicato.Replicates extended properties associated with the published article source object.
0x40000x4000 Replica i vincoli UNIQUE.Replicates UNIQUE constraints. Vengono inoltre replicati tutti gli indici correlati al vincolo, anche se le opzioni 0x10 e 0x40 non sono abilitati.Any indexes related to the constraint are also replicated, even if options 0x10 and 0x40 are not enabled.
0x80000x8000 Questa opzione non è valida per i server di pubblicazione che eseguono SQL Server 2005SQL Server 2005 o versioni successive.This option is not valid for Publishers running SQL Server 2005SQL Server 2005 or later versions.
0x10000.0x10000 Replica i vincoli CHECK come NOT FOR REPLICATION in modo che i vincoli non vengono imposti durante la sincronizzazione.Replicates CHECK constraints as NOT FOR REPLICATION so that the constraints are not enforced during synchronization.
0x200000x20000 Replica i vincoli FOREIGN KEY come NOT FOR REPLICATION in modo che i vincoli non vengono imposti durante la sincronizzazione.Replicates FOREIGN KEY constraints as NOT FOR REPLICATION so that the constraints are not enforced during synchronization.
0x400000x40000 Replica i filegroup associati a una tabella o un indice partizionato.Replicates filegroups associated with a partitioned table or index.
0x800000x80000 Replica lo schema di partizione per una tabella partizionata.Replicates the partition scheme for a partitioned table.
0x1000000x100000 Replica lo schema di partizione per un indice partizionato.Replicates the partition scheme for a partitioned index.
0x2000000x200000 Replica le statistiche della tabella.Replicates table statistics.
0x4000000x400000 Replica le associazioni predefinite.Replicates default Bindings.
0x8000000x800000 Replica le associazioni di regole.Replicates rule Bindings.
0x10000000x1000000 Replica l'indice full-text.Replicates the full-text index.
0x20000000x2000000 Raccolte di XML schema associata a xml colonne non vengono replicate.XML schema collections bound to xml columns are not replicated.
0x40000000x4000000 Replica gli indici sul xml colonne.Replicates indexes on xml columns.
0x80000000x8000000 Crea gli eventuali schemi non ancora presenti nel Sottoscrittore.Creates any schemas not already present on the subscriber.
0x100000000x10000000 Consente di convertire xml le colonne da ntext nel Sottoscrittore.Converts xml columns to ntext on the Subscriber.
0x200000000x20000000 Tipi di dati dell'oggetto converte grandi dimensioni (nvarchar (max), varchar (max), e varbinary (max)) introdotte in SQL Server 2005SQL Server 2005 ai tipi di dati supportati in SQL Server 2000 (8.x)SQL Server 2000 (8.x).Converts large object data types (nvarchar(max), varchar(max), and varbinary(max)) introduced in SQL Server 2005SQL Server 2005 to data types that are supported on SQL Server 2000 (8.x)SQL Server 2000 (8.x).
0x400000000x40000000 Replica le autorizzazioni.Replicates permissions.
0x800000000x80000000 Esegue un tentativo di rimozione delle dipendenze dagli oggetti che non fanno parte della pubblicazione.Attempts to drop dependencies to any objects that are not part of the publication.
0x1000000000x100000000 Usare questa opzione per replicare l'attributo FILESTREAM se è specificato nel varbinary (max) colonne.Use this option to replicate the FILESTREAM attribute if it is specified on varbinary(max) columns. Non specificare questa opzione se si stanno replicando tabelle nei Sottoscrittori SQL Server 2005SQL Server 2005.Do not specify this option if you are replicating tables to SQL Server 2005SQL Server 2005 Subscribers. La replica di tabelle con colonne FILESTREAM in SQL Server 2000 (8.x)SQL Server 2000 (8.x) sottoscrittori non è supportata, indipendentemente dal modo in cui è impostata questa opzione dello schema.Replicating tables that have FILESTREAM columns to SQL Server 2000 (8.x)SQL Server 2000 (8.x) Subscribers is not supported, regardless of how this schema option is set. Vedere l'opzione correlata 0x800000000.See related option 0x800000000.
0x2000000000x200000000 Converte i tipi di dati di data e ora (data, ora, datetimeoffset, e datetime2) introdotto in SQL Server 2008SQL Server 2008 ai dati tipi supportati nelle versioni precedenti di SQL ServerSQL Server.Converts date and time data types (date, time, datetimeoffset, and datetime2) introduced in SQL Server 2008SQL Server 2008 to data types that are supported on earlier versions of SQL ServerSQL Server.
0x4000000000x400000000 Replica l'opzione di compressione per dati e indici.Replicates the compression option for data and indexes. Per altre informazioni, vedere Data Compression.For more information, see Data Compression.
0x8000000000x800000000 Impostare questa opzione per archiviare i dati FILESTREAM nel relativo filegroup nel Sottoscrittore.Set this option to store FILESTREAM data on its own filegroup at the Subscriber. Se questa opzione non è impostata, i dati FILESTREAM vengono archiviati nel filegroup predefinito.If this option is not set, FILESTREAM data is stored on the default filegroup. Tramite la replica non vengono creati filegroup, pertanto, se si imposta questa opzione, è necessario creare il filegroup prima di applicare lo snapshot nel Sottoscrittore.Replication does not create filegroups; therefore, if you set this option, you must create the filegroup before you apply the snapshot at the Subscriber. Per altre informazioni su come creare gli oggetti prima di applicare lo snapshot, vedere eseguire gli script prima e dopo l'applicazione dello Snapshot.For more information about how to create objects before you apply the snapshot, see Execute Scripts Before and After the Snapshot Is Applied.

Vedere l'opzione correlata 0x100000000.See related option 0x100000000.
0x10000000000x1000000000 Converte i tipi common language runtime (CLR) definito dall'utente (UDT) in varbinary (max) in modo che le colonne di tipo definito dall'utente possano essere replicate nei Sottoscrittori che eseguono SQL Server 2005SQL Server 2005.Converts common language runtime (CLR) user-defined types (UDTs) to varbinary(max) so that columns of type UDT can be replicated to Subscribers that are running SQL Server 2005SQL Server 2005.
0x20000000000x2000000000 Converte il hierarchyid tipo di dati varbinary (max) in modo che le colonne di tipo hierarchyid possano essere replicate nei Sottoscrittori che eseguono SQL Server 2005SQL Server 2005.Converts the hierarchyid data type to varbinary(max) so that columns of type hierarchyid can be replicated to Subscribers that are running SQL Server 2005SQL Server 2005. Per altre informazioni su come usare hierarchyid le colonne nelle tabelle replicate, vedere hierarchyid (Transact-SQL).For more information about how to use hierarchyid columns in replicated tables, see hierarchyid (Transact-SQL).
0x40000000000x4000000000 Replica gli eventuali indici filtrati sulla tabella.Replicates any filtered indexes on the table. Per altre informazioni sugli indici filtrati, vedere creare indici filtrati.For more information about filtered indexes, see Create Filtered Indexes.
0x80000000000x8000000000 Converte il geografia e geometry tipi di dati di varbinary (max) in modo che le colonne di questi tipi possono essere replicate nei Sottoscrittori che eseguono SQL Server 2005SQL Server 2005.Converts the geography and geometry data types to varbinary(max) so that columns of these types can be replicated to Subscribers that are running SQL Server 2005SQL Server 2005.
0x100000000000x10000000000 Replica gli indici su colonne di tipo geografia e geometry.Replicates indexes on columns of type geography and geometry.

Se è NULL, il sistema genera automaticamente un'opzione di schema valida per l'articolo.If this value is NULL, the system auto-generates a valid schema option for the article. Il opzioni predefinite dello Schema tabella nella sezione Osservazioni vengono illustrati i valori scelti in base al tipo di articolo.The Default Schema Option table in the Remarks section shows the value that is chosen based upon the article type. Inoltre, non tutti schema_option valori sono validi per tutti i tipi di replica e il tipo di articolo.Also, not all schema_option values are valid for every type of replication and article type. Il opzioni di Schema valide tabella corrispondente nella sezione Osservazioni vengono illustrate le opzioni che possono essere specificate per un tipo di articolo specificato.The Valid Schema Option table given in the Remarks shows the options that can be specified for a given article type.

Nota

Il schema_option parametro interessa solo le opzioni di replica per lo snapshot iniziale.The schema_option parameter only affects replication options for the initial snapshot. Dopo aver generato dall'agente Snapshot e applicato al sottoscrittore lo schema iniziale, la replica delle modifiche dello schema di pubblicazione al sottoscrittore si verificano in base alle regole di replica modifiche dello schema e il replicate_ddl impostazione del parametro specificato nella sp_addmergepublication.Once the initial schema has been generated by the Snapshot Agent and applied at the Subscriber, the replication of publication schema changes to the Subscriber occur based on schema change replication rules and the replicate_ddl parameter setting specified in sp_addmergepublication. Per altre informazioni, vedere Apportare modifiche allo schema nei database di pubblicazione.For more information, see Make Schema Changes on Publication Databases.

[ @subset_filterclause= ] 'subset_filterclause'[ @subset_filterclause= ] 'subset_filterclause'
Clausola WHERE che specifica il filtraggio orizzontale di un articolo di tabella senza la parola WHERE.Is a WHERE clause specifying the horizontal filtering of a table article without the word WHERE included. subset_filterclause presenta nvarchar(1000), con un valore predefinito di una stringa vuota.subset_filterclause is of nvarchar(1000), with a default of an empty string.

Importante

Per motivi relativi alle prestazioni, è consigliabile evitare di applicare funzioni ai nomi di colonna nelle clausole di filtro di riga con parametri, come LEFT([MyColumn]) = SUSER_SNAME().For performance reasons, we recommended that you not apply functions to column names in parameterized row filter clauses, such as LEFT([MyColumn]) = SUSER_SNAME(). Se si usa HOST_NAME in una clausola di filtro e si sostituisce il valore di HOST_NAME, potrebbe essere necessario convertire i tipi di dati tramite CONVERTIRE.If you use HOST_NAME in a filter clause and override the HOST_NAME value, you might have to convert data types by using CONVERT. Per altre informazioni sulle procedure consigliate per questo caso, vedere la sezione "Eseguire l'override del valore di HOST_NAME ()" nella Parameterized Row Filters.For more information about best practices for this case, see the section "Overriding the HOST_NAME() Value" in Parameterized Row Filters.

[ @article_resolver= ] 'article_resolver'[ @article_resolver= ] 'article_resolver'
Sistema di risoluzione basato su COM utilizzato per risolvere i conflitti nell'articolo di tabella oppure assembly .NET Framework richiamato per eseguire una logica di business personalizzata sull'articolo di tabella.Is the COM-based resolver used to resolve conflicts on the table article or the .NET Framework assembly invoked to execute custom business logic on the table article. article_resolver viene nvarchar (255), con un valore predefinito è NULL.article_resolver is varchar(255), with a default of NULL. I valori disponibili per questi parametri sono elencati nell'argomento relativo ai sistemi di risoluzione personalizzati MicrosoftMicrosoft.Available values for this parameter are listed in MicrosoftMicrosoft Custom Resolvers. Se il valore specificato non corrisponde a uno dei sistemi di risoluzione MicrosoftMicrosoft, in SQL ServerSQL Server viene utilizzato il sistema di risoluzione specificato anziché quello di sistema.If the value provided is not one of the MicrosoftMicrosoft resolvers, SQL ServerSQL Server uses the specified resolver instead of the system-supplied resolver. Uso sp_enumcustomresolvers per enumerare l'elenco dei sistemi di risoluzione personalizzati disponibili.Use sp_enumcustomresolvers to enumerate the list of available custom resolvers. Per altre informazioni, vedere eseguire la logica di Business durante la sincronizzazione Merge e Advanced Merge Replication Conflict Detection and risoluzione.For more information, see Execute Business Logic During Merge Synchronization and Advanced Merge Replication Conflict Detection and Resolution.

[ @resolver_info= ] 'resolver_info'[ @resolver_info= ] 'resolver_info'
Specifica le informazioni aggiuntive necessarie per un sistema di risoluzione personalizzato.Is used to specify additional information required by a custom resolver. Alcuni sistemi di risoluzione MicrosoftMicrosoft richiedono una colonna come input.Some of the MicrosoftMicrosoft Resolvers require a column provided as input to the resolver. resolver_info viene nvarchar(255, con un valore predefinito è NULL.resolver_info is nvarchar(255), with a default of NULL. Per altre informazioni, vedere Sistemi di risoluzione dei conflitti basati su Microsoft COM.For more information, see Microsoft COM-Based Resolvers.

[ @source_owner= ] 'source_owner'[ @source_owner= ] 'source_owner'
È il nome del proprietario della source_object.Is the name of the owner of the source_object. source_owner viene sysname, con un valore predefinito è NULL.source_owner is sysname, with a default of NULL. Se il valore è NULL, l'utente corrente verrà considerato il proprietario.If NULL, the current user is assumed to be the owner.

[ @destination_owner= ] 'destination_owner'[ @destination_owner= ] 'destination_owner'
Proprietario dell'oggetto nel database di sottoscrizione, se diverso da 'dbo'.Is the owner of the object in the subscription database, if not 'dbo'. destination_owner viene sysname, con un valore predefinito è NULL.destination_owner is sysname, with a default of NULL. Se NULL, 'dbo' verrà considerato il proprietario.If NULL, 'dbo' is assumed to be the owner.

[ @vertical_partition= ] 'column_filter'[ @vertical_partition= ] 'column_filter'
Abilita e disabilita l'applicazione di filtri alle colonne in un articolo di tabella.Enables and disables column filtering on a table article. vertical_partition viene nvarchar(5 con valore predefinito è FALSE.vertical_partition is nvarchar(5) with a default of FALSE.

false indica non è applicato alcun filtro verticale e pertanto pubblicate tutte le colonne.false indicates there is no vertical filtering and publishes all columns.

true Cancella tutte le colonne ad eccezione della chiave primaria dichiarata e delle colonne ROWGUID.true clears all columns except the declared primary key and ROWGUID columns. Le colonne vengono aggiunte utilizzando sp_mergearticlecolumn.Columns are added by using sp_mergearticlecolumn.

[ @auto_identity_range= ] 'automatic_identity_range'[ @auto_identity_range= ] 'automatic_identity_range'
Abilita e disabilita la gestione automatica degli intervalli di valori Identity per l'articolo di tabella specificato di una pubblicazione al momento della creazione.Enables and disables automatic identity range handling for this table article on a publication at the time it is created. auto_identity_range viene nvarchar(5, con un valore predefinito è FALSE.auto_identity_range is nvarchar(5), with a default of FALSE. true intervallo di valori identity automatico consente la gestione, mentre false lo disabilita.true enables automatic identity range handling, while false disables it.

Nota

auto_identity_range è stata deprecata e viene fornito per compatibilità con le versioni.auto_identity_range has been deprecated and is provided for backward compatibility only. È consigliabile usare identityrangemanagementoption per specificare opzioni di gestione di intervalli di valori identity.You should use identityrangemanagementoption for specifying identity range management options. Per altre informazioni, vedere Replicare colonne Identity.For more information, see Replicate Identity Columns.

[ @pub_identity_range= ] pub_identity_range[ @pub_identity_range= ] pub_identity_range
Controlla le dimensioni dell'intervallo di valori Identity allocato a un Sottoscrittore con una sottoscrizione server, quando è attivata la gestione automatica degli intervalli di valori Identity.Controls the identity range size allocated to a Subscriber with a server subscription when automatic identity range management is used. L'intervallo di valori Identity è riservato al Sottoscrittore di ripubblicazione per l'assegnazione ai propri Sottoscrittori.This identity range is reserved for a republishing Subscriber to allocate to its own Subscribers. pub_identity_range viene bigint, con un valore predefinito è NULL.pub_identity_range is bigint, with a default of NULL. È necessario specificare questo parametro se identityrangemanagementoption viene automatico altrimenti auto_identity_range è true.You must specify this parameter if identityrangemanagementoption is auto or if auto_identity_range is true.

[ @identity_range= ] identity_range[ @identity_range= ] identity_range
Controlla le dimensioni dell'intervallo di valori Identity assegnato al server di pubblicazione e al Sottoscrittore quando è attivata la gestione automatica degli intervalli di valori Identity.Controls the identity range size allocated both to the Publisher and to the Subscriber when automatic identity range management is used. identity_range viene bigint, con un valore predefinito è NULL.identity_range is bigint, with a default of NULL. È necessario specificare questo parametro se identityrangemanagementoption viene automatico altrimenti auto_identity_range è true.You must specify this parameter if identityrangemanagementoption is auto or if auto_identity_range is true.

Nota

identity_range controlla le dimensioni di intervallo di valori identity nei Sottoscrittori che usano versioni precedenti di ripubblicazione SQL ServerSQL Server.identity_range controls the identity range size at republishing Subscribers using previous versions of SQL ServerSQL Server.

[ @threshold= ] soglia[ @threshold= ] threshold
Valore percentuale che determina quando l'agente di merge assegna un nuovo intervallo di valori Identity.Percentage value that controls when the Merge Agent assigns a new identity range. Quando la percentuale di valori specificato in soglia viene usato, l'agente di Merge crea un nuovo intervallo di valori identity.When the percentage of values specified in threshold is used, the Merge Agent creates a new identity range. soglia viene int, con un valore predefinito è NULL.threshold is int, with a default of NULL. È necessario specificare questo parametro se identityrangemanagementoption viene automatico altrimenti auto_identity_range è true.You must specify this parameter if identityrangemanagementoption is auto or if auto_identity_range is true.

[ @verify_resolver_signature= ] verify_resolver_signature[ @verify_resolver_signature= ] verify_resolver_signature
Specifica se una firma digitale viene verificata prima dell'utilizzo di un sistema di risoluzione nella replica di tipo merge.Specifies if a digital signature is verified before using a resolver in merge replication. verify_resolver_signature viene int, con un valore predefinito è 1.verify_resolver_signature is int, with a default of 1.

0 specifica che la firma non verrà verificata.0 specifies that the signature will not be verified.

1 specifica che la firma verrà verificata per stabilire se proviene da una fonte attendibile.1 specifies that the signature will be verified to see if it is from a trusted source.

[ @destination_object= ] 'destination_object'[ @destination_object= ] 'destination_object'
Nome dell'oggetto nel database di sottoscrizione.Is the name of the object in the subscription database. destination_object viene sysname, con un valore predefinito di quali sono le novità @source_object.destination_object is sysname, with a default value of what is in @source_object. È possibile specificare questo parametro solo se l'articolo include solo lo schema, come nel caso di stored procedure, viste e funzioni definite dall'utente.This parameter can be specified only if the article is a schema-only article, such as stored procedures, views, and UDFs. Se l'articolo specificato è un articolo di tabella, il valore in @source_object sostituisce il valore nel destination_object.If the article specified is a table article, the value in @source_object overrides the value in destination_object.

[ @allow_interactive_resolver= ] 'allow_interactive_resolver'[ @allow_interactive_resolver= ] 'allow_interactive_resolver'
Abilita o disabilita l'utilizzo del sistema di risoluzione interattivo in un articolo.Enables or disables the use of the Interactive Resolver on an article. allow_interactive_resolver viene nvarchar(5, con un valore predefinito è FALSE.allow_interactive_resolver is nvarchar(5), with a default of FALSE. true consente l'uso di risoluzione interattivo per l'articolo; false lo disabilita.true enables the use of the Interactive Resolver on the article; false disables it.

Nota

Il sistema di risoluzione interattivo non è supportato dai Sottoscrittori SQL Server CompactSQL Server Compact.Interactive Resolver is not supported by SQL Server CompactSQL Server Compact Subscribers.

[ @fast_multicol_updateproc= ] 'fast_multicol_updateproc'[ @fast_multicol_updateproc= ] 'fast_multicol_updateproc'
Questo parametro è deprecato ed è ancora disponibile per compatibilità con gli script di versioni precedenti.This parameter has been deprecated and is maintained for backward compatibility of scripts.

[ @check_permissions= ] check_permissions[ @check_permissions= ] check_permissions
Mappa di bit delle autorizzazioni a livello di tabella verificate quando l'agente di merge applica le modifiche nel server di pubblicazione.Is a bitmap of the table-level permissions that are verified when the Merge Agent applies changes to the Publisher. Se l'account di accesso o l'account utente del server di pubblicazione utilizzato per il processo di merge non dispone delle autorizzazioni corrette per le tabelle, le modifiche non valide vengono registrate come conflitti.If the Publisher login/user account used by the merge process does not have the correct table permissions, the invalid changes are logged as conflicts. check_permissions viene inte può essere il | (OR bit per bit) prodotto di uno o più dei valori seguenti.check_permissions is int, and can be the | (Bitwise OR) product of one or more of the following values.

valoreValue DescriptionDescription
0x00 (impostazione predefinita)0x00 (default) Le autorizzazioni non vengono controllate.Permissions are not checked.
0x100x10 Le autorizzazioni vengono controllate nel server di pubblicazione prima di consentire il caricamento delle operazioni di inserimento eseguite nel Sottoscrittore.Checks permissions at the Publisher before insert operations made at a Subscriber can be uploaded.
0x200x20 Le autorizzazioni vengono controllate nel server di pubblicazione prima di consentire il caricamento delle operazioni di aggiornamento eseguite nel Sottoscrittore.Checks permissions at the Publisher before update operations made at a Subscriber can be uploaded.
0x400x40 Le autorizzazioni vengono controllate nel server di pubblicazione prima di consentire il caricamento delle operazioni di eliminazione eseguite nel Sottoscrittore.Checks permissions at the Publisher before delete operations made at a Subscriber can be uploaded.

[ @force_invalidate_snapshot= ] force_invalidate_snapshot[ @force_invalidate_snapshot= ] force_invalidate_snapshot
Segnala che l'azione eseguita da questa stored procedure potrebbe invalidare uno snapshot esistente.Acknowledges that the action taken by this stored procedure may invalidate an existing snapshot. force_invalidate_snapshot è un bit, con un valore predefinito è 0.force_invalidate_snapshot is a bit, with a default of 0.

0 specifica che l'aggiunta di un articolo non invalidano lo snapshot non è valido.0 specifies that adding an article does not cause the snapshot to be invalid. Se la stored procedure rileva che la modifica richiede un nuovo snapshot, viene generato un errore e non viene apportata alcuna modifica.If the stored procedure detects that the change does require a new snapshot, an error occurs and no changes are made.

1 specifica che l'aggiunta di un articolo può invalidare lo snapshot non è valido e se sono disponibili sottoscrizioni che richiedono un nuovo snapshot, consente l'autorizzazione per lo snapshot esistente deve essere contrassegnato come obsoleto e di generarne uno nuovo.1 specifies that adding an article may cause the snapshot to be invalid, and if there are existing subscriptions that require a new snapshot, gives permission for the existing snapshot to be marked as obsolete and a new snapshot generated. force_invalidate_snapshot è impostata su 1 quando si aggiunge un articolo a una pubblicazione con uno snapshot esistente.force_invalidate_snapshot is set to 1 when adding an article to a publication with an existing snapshot.

[ @published_in_tran_pub= ] 'published_in_tran_pub'[ @published_in_tran_pub= ] 'published_in_tran_pub'
Indica che un articolo in una pubblicazione di tipo merge viene pubblicato anche in una pubblicazione transazionale.Indicates that an article in a merge publication is also published in a transactional publication. published_in_tran_pub viene nvarchar(5, con un valore predefinito è FALSE.published_in_tran_pub is nvarchar(5), with a default of FALSE. true specifica che l'articolo è pubblicato anche in una pubblicazione transazionale.true specifies that the article is also published in a transactional publication.

[ @force_reinit_subscription= ] force_reinit_subscription[ @force_reinit_subscription= ] force_reinit_subscription
Segnala che l'azione eseguita dalla stored procedure potrebbe richiedere la reinizializzazione delle sottoscrizioni esistenti.Acknowledges that the action taken by this stored procedure may require existing subscriptions to be reinitialized. force_reinit_subscription è un bit, con un valore predefinito è 0.force_reinit_subscription is a bit, with a default of 0.

0 indica che l'aggiunta di un articolo non causano la reinizializzazione della sottoscrizione.0 specifies that adding an article does not cause the subscription to be reinitialized. Se la stored procedure rileva che la modifica richiede la reinizializzazione delle sottoscrizioni esistenti, viene generato un errore e non viene apportata alcuna modifica.If the stored procedure detects that the change would require existing subscriptions to be reinitialized, an error occurs and no changes are made.

1 indica che le modifiche apportate all'articolo di merge causano reinizializzazione delle sottoscrizioni esistenti e autorizza la reinizializzazione della sottoscrizione.1 means that changes to the merge article causes existing subscriptions to be reinitialized, and gives permission for the subscription reinitialization to occur. force_reinit_subscription è impostata su 1 quando subset_filterclause specifica un filtro di riga con parametri.force_reinit_subscription is set to 1 when subset_filterclause specifies a parameterized row filter.

[ @logical_record_level_conflict_detection= ] 'logical_record_level_conflict_detection'[ @logical_record_level_conflict_detection= ] 'logical_record_level_conflict_detection'
Specifica il livello di rilevamento dei conflitti per un articolo membro di un record logico.Specifies the level of conflict detection for an article that is a member of a logical record. logical_record_level_conflict_detection viene nvarchar(5, con un valore predefinito è FALSE.logical_record_level_conflict_detection is nvarchar(5), with a default of FALSE.

true specifica che verrà rilevato un conflitto se vengono apportate modifiche in qualsiasi punto del record logico.true specifies that a conflict will be detected if changes are made anywhere in the logical record.

false specifica che viene utilizzato il rilevamento dei conflitti predefinito come specificato da column_tracking.false specifies that the default conflict detection is used as specified by column_tracking. Per altre informazioni, vedere Raggruppare modifiche alle righe correlate con record logici.For more information, see Group Changes to Related Rows with Logical Records.

Nota

Poiché i record logici non sono supportati da SQL Server CompactSQL Server Compact sottoscrittori, è necessario specificare un valore di false per logical_record_level_conflict_detection per supportare tali sottoscrittori.Because logical records are not supported by SQL Server CompactSQL Server Compact Subscribers, you must specify a value of false for logical_record_level_conflict_detection to support these Subscribers.

[ @logical_record_level_conflict_resolution= ] 'logical_record_level_conflict_resolution'[ @logical_record_level_conflict_resolution= ] 'logical_record_level_conflict_resolution'
Specifica il livello di risoluzione dei conflitti per un articolo membro di un record logico.Specifies the level of conflict resolution for an article that is a member of a logical record. logical_record_level_conflict_resolution viene nvarchar(5, con un valore predefinito è FALSE.logical_record_level_conflict_resolution is nvarchar(5), with a default of FALSE.

true specifica che l'intero record logico prevalente sovrascrive il record logico perdente.true specifies that the entire winning logical record overwrites the losing logical record.

false specifica che le righe prevalenti non sono vincolate al record logico.false specifies that winning rows are not constrained to the logical record. Se logical_record_level_conflict_detection viene true, quindi logical_record_level_conflict_resolution deve essere impostata anche su true.If logical_record_level_conflict_detection is true, then logical_record_level_conflict_resolution must also be set to true. Per altre informazioni, vedere Raggruppare modifiche alle righe correlate con record logici.For more information, see Group Changes to Related Rows with Logical Records.

Nota

Poiché i record logici non sono supportati da SQL Server CompactSQL Server Compact sottoscrittori, è necessario specificare un valore di false per logical_record_level_conflict_resolution per supportare tali sottoscrittori.Because logical records are not supported by SQL Server CompactSQL Server Compact Subscribers, you must specify a value of false for logical_record_level_conflict_resolution to support these Subscribers.

[ @partition_options= ] partition_options[ @partition_options= ] partition_options
Definisce il modo in cui vengono partizionati i dati nell'articolo. Ciò consente di ottimizzare le prestazioni se tutte le righe appartengono a un'unica partizione o a un'unica sottoscrizione.Defines the way in which data in the article is partitioned, which enables performance optimizations when all rows belong in only one partition or in only one subscription. partition_options viene tinyint, e può essere uno dei valori seguenti.partition_options is tinyint, and can be one of the following values.

valoreValue DescriptionDescription
0 (predefinito)0 (default) Il filtro applicato all'articolo è statico oppure non restituisce un subset di dati univoco per ogni partizione, ovvero si creano partizioni sovrapposte.The filtering for the article either is static or does not yield a unique subset of data for each partition, that is, an "overlapping" partition.
11 Le partizioni sono sovrapposte e gli aggiornamenti DML (Data Manipulation Language) eseguiti nel Sottoscrittore non possono modificare la partizione a cui appartiene una riga.The partitions are overlapping, and data manipulation language (DML) updates made at the Subscriber cannot change the partition to which a row belongs.
22 Il filtro applicato all'articolo restituisce partizioni non sovrapposte, ma più Sottoscrittori possono ricevere la stessa partizione.The filtering for the article yields non-overlapping partitions, but multiple Subscribers can receive the same partition.
33 Il filtro applicato all'articolo restituisce partizioni non sovrapposte univoche per ogni sottoscrizione.The filtering for the article yields non-overlapping partitions that are unique for each subscription.

Nota

Se la tabella di origine per un articolo è già pubblicata in un'altra pubblicazione, il valore della partition_options deve coincidere per entrambi gli articoli.If the source table for an article is already published in another publication, then the value of partition_options must be the same for both articles.

[ @processing_order= ] processing_order[ @processing_order= ] processing_order
Indica l'ordine di elaborazione degli articoli in una pubblicazione di tipo merge.Indicates the processing order of articles in a merge publication. processing_order viene int, con un valore predefinito è 0.processing_order is int, with a default of 0. 0 specifica che l'articolo non è ordinato e qualsiasi altro valore rappresenta il valore ordinale dell'ordine di elaborazione per questo articolo.0 specifies that the article is unordered, and any other value represents the ordinal value of the processing order for this article. Gli articoli vengono elaborati in ordine crescente in base al valore.Articles are processed in order from lowest to highest value. Se due articoli hanno lo stesso valore, l'ordine di elaborazione è determinato dall'ordine di nome alternativo dell'articolo nella sysmergearticles tabella di sistema.If two articles have the same value, processing order is determined by the order of the article nickname in the sysmergearticles system table. Per altre informazioni, vedere Specificare l'ordine di elaborazione degli articoli di merge.For more information, see Specify the Processing Order of Merge Articles.

[ @subscriber_upload_options= ] subscriber_upload_options[ @subscriber_upload_options= ] subscriber_upload_options
Specifica le restrizioni per gli aggiornamenti eseguiti in un Sottoscrittore con una sottoscrizione client.Defines restrictions on updates made at a Subscriber with a client subscription. Per altre informazioni, vedere Ottimizzare le prestazioni della replica di tipo merge con gli articoli di solo download.For more information, see Optimize Merge Replication Performance with Download-Only Articles. subscriber_upload_options viene tinyint, e può essere uno dei valori seguenti.subscriber_upload_options is tinyint, and can be one of the following values.

valoreValue DescriptionDescription
0 (predefinito)0 (default) Nessuna restrizione.No restrictions. Le modifiche eseguite nel Sottoscrittore vengono caricate nel server di pubblicazione.Changes made at the Subscriber are uploaded to the Publisher.
11 Sono consentite modifiche in un Sottoscrittore, ma tali modifiche non vengono caricate nel server di pubblicazione.Changes are allowed at the Subscriber, but they are not uploaded to the Publisher.
22 Non sono consentite modifiche nel Sottoscrittore.Changes are not allowed at the Subscriber.

Modificando subscriber_upload_options richiede la sottoscrizione per la reinizializzazione chiamando sp_reinitmergepullsubscription (Transact-SQL).Changing subscriber_upload_options requires the subscription to be reinitialized by calling sp_reinitmergepullsubscription (Transact-SQL).

Nota

Se la tabella di origine per un articolo è già pubblicata in un'altra pubblicazione, il valore di subscriber_upload_options deve coincidere per entrambi gli articoli.If the source table for an article is already published in another publication, the value of subscriber_upload_options must be the same for both articles.

[ @identityrangemanagementoption= ] identityrangemanagementoption[ @identityrangemanagementoption= ] identityrangemanagementoption
Specifica la modalità di gestione degli intervalli di valori Identity per l'articolo.Specifies how identity range management is handled for the article. identityrangemanagementoption viene nvarchar(10), e può essere uno dei valori seguenti.identityrangemanagementoption is nvarchar(10), and can be one of the following values.

valoreValue DescriptionDescription
Nessunonone Disabilita la gestione degli intervalli di valori Identity.Disables identity range management.
Manualemanual Contrassegna la colonna Identity con NOT FOR REPLICATION per consentire la gestione manuale degli intervalli di valori Identity.Marks the identity column using NOT FOR REPLICATION to enable manual identity range handling.
Automaticoauto Imposta la gestione automatica degli intervalli di valori Identity.Specifies automatic management of identity ranges.
NULL(default)NULL(default) Per impostazione predefinita nonequando il valore di auto_identity_range non true.Defaults to nonewhen the value of auto_identity_range is not true.

Per garantire la compatibilità con le versioni precedenti, quando il valore di identityrangemanagementoption è NULL, il valore di auto_identity_range sia selezionata.For backward compatibility, when the value of identityrangemanagementoption is NULL, the value of auto_identity_range is checked. Tuttavia, quando il valore di identityrangemanagementoption non è NULL, il valore di auto_identity_range viene ignorato.However, when the value of identityrangemanagementoption is not NULL, then the value of auto_identity_range is ignored. Per altre informazioni, vedere Replicare colonne Identity.For more information, see Replicate Identity Columns.

[ @delete_tracking= ] 'delete_tracking'[ @delete_tracking= ] 'delete_tracking'
Indica se viene eseguita la replica delle eliminazioni.Indicates whether deletes are replicated. delete_tracking viene nvarchar(5, con un valore predefinito è TRUE.delete_tracking is nvarchar(5), with a default of TRUE. false indica che le eliminazioni non vengono replicate, e true indica che le eliminazioni vengono replicate, situazione corrispondente al normale funzionamento della replica di tipo merge.false indicates that deletes are not replicated, and true indicates that deletes are replicated, which is the usual behavior for merge replication. Quando delete_tracking è impostata su false, le righe eliminate nel Sottoscrittore devono essere rimosse manualmente nel server di pubblicazione e le righe eliminate nel server di pubblicazione devono essere rimosse manualmente nel Sottoscrittore.When delete_tracking is set to false, rows deleted at the Subscriber must be manually removed at the Publisher, and rows deleted at the Publisher must be manually removed at the Subscriber.

Importante

L'impostazione delete_tracking al false comporta non convergenza.Setting delete_tracking to false results in non-convergence. Se la tabella di origine per un articolo è già pubblicata in un'altra pubblicazione, il valore della delete_tracking deve coincidere per entrambi gli articoli.If the source table for an article is already published in another publication, then the value of delete_tracking must be the same for both articles.

Nota

delete_tracking opzioni non possono essere impostate usando il Creazione guidata nuova pubblicazione o il le proprietà della pubblicazione nella finestra di dialogo.delete_tracking options cannot be set using the New Publication Wizard or the Publication Properties dialog box.

[ @compensate_for_errors= ] 'compensate_for_errors'[ @compensate_for_errors= ] 'compensate_for_errors'
Specifica se devono essere eseguite azioni di compensazione quando vengono rilevati errori durante la sincronizzazione.Indicates if compensating actions are taken when errors are encountered during synchronization. compensate_for_errors hos nvarchar(5, con un valore predefinito è FALSE.compensate_for_errors is nvarchar(5), with a default of FALSE. Se impostato su true, le modifiche che non può essere applicato a un sottoscrittore o server di pubblicazione durante la sincronizzazione vengono sempre causare azioni di compensazione per annullare la modifica; tuttavia, una configurata in modo non corretto sottoscrittore che genera un errore può provocare modifiche in altri sottoscrittori e server di pubblicazione per essere annullata.When set to true, changes that cannot be applied at a Subscriber or Publisher during synchronization always lead to compensating actions to undo the change; however, one incorrectly configured Subscriber that generates an error can cause changes at other Subscribers and Publishers to be undone. false Disabilita queste azioni di compensazione, tuttavia, gli errori vengono comunque registrate con compensazione e le successive operazioni di unione continua a tentare di applicare le modifiche fino a quando non è riuscita.false disables these compensating actions, however, the errors are still logged as with compensation and subsequent merges continues to attempt to apply the changes until successful.

Importante

Anche se i dati nelle righe interessate potrebbero sembrare non convergenti, non appena vengono risolti gli eventuali errori generati le modifiche potranno essere applicate e si otterrà la convergenza dei dati.Although data in the affected rows might appear to be out of convergence, as soon as you address any errors, changes can be applied and data will converge. Se la tabella di origine per un articolo è già pubblicata in un'altra pubblicazione, il valore della compensate_for_errors deve coincidere per entrambi gli articoli.If the source table for an article is already published in another publication, then the value of compensate_for_errors must be the same for both articles.

[ @stream_blob_columns= ] 'stream_blob_columns'[ @stream_blob_columns= ] 'stream_blob_columns'
Specifica se viene utilizzata l'ottimizzazione del flusso di dati per la replica di colonne BLOB (Binary Large Object).Specifies that a data stream optimization be used when replicating binary large object columns. stream_blob_columns viene nvarchar(5, con un valore predefinito è FALSE.stream_blob_columns is nvarchar(5), with a default of FALSE. true significa che l'ottimizzazione verrà tentata.true means that the optimization will be attempted. stream_blob_columns è impostato su true se FILESTREAM è abilitato.stream_blob_columns is set to true when FILESTREAM is enabled. In questo modo, la replica dei dati FILESTREAM può essere eseguita in maniera ottimale e si riduce l'utilizzo della memoria.This allows replication of FILESTREAM data to perform optimally and reduce memory utilization. Per imporre gli articoli di tabella FILESTREAM non utilizzino flussi blob, usare sp_changemergearticle per impostare stream_blob_columns su false.To force FILESTREAM table articles to not use blob streaming, use sp_changemergearticle to set stream_blob_columns to false.

Importante

L'abilitazione di questa ottimizzazione della memoria può ridurre le prestazioni dell'agente di merge durante la sincronizzazione.Enabling this memory optimization may reduce the performance of the Merge Agent during synchronization. È consigliabile utilizzare questa opzione solo se vengono replicate colonne contenenti più megabyte di dati.This option should only be used when replicating columns that contain megabytes of data.

Nota

Alcune funzionalità di replica di tipo merge, come i record logici, può comunque impedire l'ottimizzazione del flusso perché non venga usato durante la replica di oggetti binari di grandi dimensioni anche con stream_blob_columns impostato su true.Certain merge replication functionalities, such as logical records, can still prevent the stream optimization from being used when replicating binary large objects even with stream_blob_columns set to true.

Valori restituitiReturn Code Values

0 (esito positivo) o 1 (esito negativo)0 (success) or 1 (failure)

NoteRemarks

sp_addmergearticle viene utilizzata nella replica di tipo merge.sp_addmergearticle is used in merge replication.

Quando si pubblicano gli oggetti, nei Sottoscrittori vengono copiate le relative definizioni.When you publish objects, their definitions are copied to Subscribers. Per la pubblicazione di un oggetto di database che dipende da altri oggetti, è necessario pubblicare tutti gli oggetti a cui fa riferimento.If you are publishing a database object that depends on one or more other objects, you must publish all referenced objects. Se ad esempio si pubblica una vista che dipende da una tabella, sarà necessario pubblicare anche la tabella.For example, if you publish a view that depends on a table, you must publish the table also.

Se si specifica un valore pari 3 per partition_options, può essere presente una sola sottoscrizione per ogni partizione di dati dell'articolo.If you specify a value of 3 for partition_options, there can be only a single subscription for each partition of data in that article. Se si crea una seconda sottoscrizione nella quale il criterio di filtro porta alla restituzione della stessa partizione della sottoscrizione esistente, quest'ultima viene eliminata.If a second subscription is created in which the filtering criterion of the new subscription resolves to the same partition as the existing subscription, the existing subscription is dropped.

Quando si specifica un valore pari a 3 per partition_options, dei metadati sono puliti ogni volta che viene eseguito l'agente di Merge e lo snapshot partizionato scade più rapidamente.When specifying a value of 3 for partition_options, metadata is cleaned-up whenever the Merge Agent runs and the partitioned snapshot expires more quickly. Quando si utilizza questa opzione è consigliabile prendere in considerazione l'abilitazione di snapshot partizionati richiesti dal Sottoscrittore.When using this option, you should consider enabling subscriber requested partitioned snapshot. Per altre informazioni, vedere Snapshots for Merge Publications with Parameterized Filters.For more information, see Snapshots for Merge Publications with Parameterized Filters.

Aggiunta di un articolo con filtro orizzontale statico, utilizzando subset_filterclause, a una pubblicazione esistente con articoli che includono filtri con parametri richiede la reinizializzazione delle sottoscrizioni.Adding an article with a static horizontal filter, using subset_filterclause, to an existing publication with articles that have parameterized filters requires the subscriptions be reinitialized.

Quando si specificano processing_order, si consiglia di lasciare gap tra i valori di ordine, che rende più semplice impostare nuovi valori in futuro.When specifying processing_order, we recommend leaving gaps between the article order values, which makes it easier to set new values in the future. Ad esempio, se si dispone di tre articoli denominati Articolo1, articolo2 e articolo3, impostare processing_order a 10, 20 e 30, anziché 1, 2 e 3.For example, if you have three articles Article1, Article2, and Article3, set processing_order to 10, 20, and 30, rather than 1, 2, and 3. Per altre informazioni, vedere Specificare l'ordine di elaborazione degli articoli di merge.For more information, see Specify the Processing Order of Merge Articles.

Tabella delle opzioni predefinite dello schemaDefault Schema Option Table

La tabella seguente descrive il valore predefinito impostato dalla stored procedure se si specifica un valore NULL per schema_option, che dipende dal tipo di articolo.This table describes the default value that is set by the stored procedure if a NULL value is specified for schema_option, which depends on article type.

Tipo di articoloArticle type Valore delle opzioni di schemaSchema option value
Func schema solofunc schema only 0x010x01
solo schema della vista indicizzataindexed view schema only 0x010x01
proc schema soloproc schema only 0x010x01
tabletable 0x0C034FD1 - SQL Server 2005SQL Server 2005 e versioni successive con snapshot in modalità nativa.0x0C034FD1 - SQL Server 2005SQL Server 2005 and later compatible publications with a native mode snapshot.

0x08034FF1 - SQL Server 2005SQL Server 2005 e versioni successive con snapshot in modalità carattere.0x08034FF1 - SQL Server 2005SQL Server 2005 and later compatible publications with a character mode snapshot.
solo schema della vistaview schema only 0x010x01

Nota

Se la pubblicazione supporta le versioni precedenti di SQL ServerSQL Server, l'opzione di schema predefinita per tabella viene 0x30034FF1.If the publication supports earlier versions of SQL ServerSQL Server, the default schema option for table is 0x30034FF1.

Tabella delle opzioni di schema valideValid Schema Option Table

Nella tabella seguente vengono descritti i valori consentiti schema_option a seconda del tipo di articolo.The following table describes the allowed values schema_option depending on article type.

Tipo di articoloArticle type Valori delle opzioni di schemaSchema option values
Func schema solofunc schema only 0x01 e 0x20000x01 and 0x2000
solo schema della vista indicizzataindexed view schema only 0x01, 0x040, 0x0100, 0x2000, 0x40000, 0x1000000e 0x2000000x01, 0x040, 0x0100, 0x2000, 0x40000, 0x1000000, and 0x200000
proc schema soloproc schema only 0x01 e 0x20000x01 and 0x2000
tabletable Tutte le opzioni.All options.
solo schema della vistaview schema only 0x01, 0x040, 0x0100, 0x2000, 0x40000, 0x1000000e 0x2000000x01, 0x040, 0x0100, 0x2000, 0x40000, 0x1000000, and 0x200000

EsempioExample

DECLARE @publication AS sysname;
DECLARE @table1 AS sysname;
DECLARE @table2 AS sysname;
DECLARE @table3 AS sysname;
DECLARE @salesschema AS sysname;
DECLARE @hrschema AS sysname;
DECLARE @filterclause AS nvarchar(1000);
SET @publication = N'AdvWorksSalesOrdersMerge'; 
SET @table1 = N'Employee'; 
SET @table2 = N'SalesOrderHeader'; 
SET @table3 = N'SalesOrderDetail'; 
SET @salesschema = N'Sales';
SET @hrschema = N'HumanResources';
SET @filterclause = N'Employee.LoginID = HOST_NAME()';

-- Add a filtered article for the Employee table.
EXEC sp_addmergearticle 
  @publication = @publication, 
  @article = @table1, 
  @source_object = @table1, 
  @type = N'table', 
  @source_owner = @hrschema,
  @schema_option = 0x0004CF1,
  @description = N'article for the Employee table',
  @subset_filterclause = @filterclause;

-- Add an article for the SalesOrderHeader table that is filtered
-- based on Employee and horizontally filtered.
EXEC sp_addmergearticle 
  @publication = @publication, 
  @article = @table2, 
  @source_object = @table2, 
  @type = N'table', 
  @source_owner = @salesschema, 
  @vertical_partition = N'true',
  @schema_option = 0x0034EF1,
  @description = N'article for the SalesOrderDetail table';

-- Add an article for the SalesOrderDetail table that is filtered
-- based on SaledOrderHeader.
EXEC sp_addmergearticle 
  @publication = @publication, 
  @article = @table3, 
  @source_object = @table3, 
  @source_owner = @salesschema,
  @description = 'article for the SalesOrderHeader table', 
  @identityrangemanagementoption = N'auto', 
  @pub_identity_range = 100000, 
  @identity_range = 100, 
  @threshold = 80,
  @schema_option = 0x0004EF1;

-- Add all columns to the SalesOrderHeader article.
EXEC sp_mergearticlecolumn 
  @publication = @publication, 
  @article = @table2, 
  @force_invalidate_snapshot = 1, 
  @force_reinit_subscription = 1;

-- Remove the credit card Approval Code column.
EXEC sp_mergearticlecolumn 
  @publication = @publication, 
  @article = @table2, 
  @column = N'CreditCardApprovalCode', 
  @operation = N'drop', 
  @force_invalidate_snapshot = 1, 
  @force_reinit_subscription = 1;

-- Add a merge join filter between Employee and SalesOrderHeader.
EXEC sp_addmergefilter 
  @publication = @publication, 
  @article = @table2, 
  @filtername = N'SalesOrderHeader_Employee', 
  @join_articlename = @table1, 
  @join_filterclause = N'Employee.BusinessEntityID = SalesOrderHeader.SalesPersonID', 
  @join_unique_key = 1, 
  @filter_type = 1, 
  @force_invalidate_snapshot = 1, 
  @force_reinit_subscription = 1;

-- Add a merge join filter between SalesOrderHeader and SalesOrderDetail.
EXEC sp_addmergefilter 
  @publication = @publication, 
  @article = @table3, 
  @filtername = N'SalesOrderDetail_SalesOrderHeader', 
  @join_articlename = @table2, 
  @join_filterclause = N'SalesOrderHeader.SalesOrderID = SalesOrderDetail.SalesOrderID', 
  @join_unique_key = 1, 
  @filter_type = 1, 
  @force_invalidate_snapshot = 1, 
  @force_reinit_subscription = 1;
GO

PermissionsPermissions

È richiesta l'appartenenza al ruolo predefinito del server sysadmin o al ruolo predefinito del database db_owner .Requires membership in the sysadmin fixed server role or the db_owner fixed database role.

Vedere ancheSee Also

Define an Article Define an Article
Pubblicare dati e oggetti di database Publish Data and Database Objects
Replicare colonne Identity Replicate Identity Columns
sp_changemergearticle (Transact-SQL) sp_changemergearticle (Transact-SQL)
sp_dropmergearticle (Transact-SQL) sp_dropmergearticle (Transact-SQL)
sp_helpmergearticle (Transact-SQL) sp_helpmergearticle (Transact-SQL)
Stored procedure per la replica (Transact-SQL)Replication Stored Procedures (Transact-SQL)