Impostazione del livello di compatibilità per le pubblicazioni di tipo mergeSet the Compatibility Level for Merge Publications

In questo argomento si illustra come impostare il livello di compatibilità per le pubblicazioni di tipo merge in SQL Server 2017SQL Server 2017 utilizzando SQL Server Management StudioSQL Server Management Studio o Transact-SQLTransact-SQL.This topic describes how to set the compatibility level for merge publications in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. Il livello di compatibilità delle pubblicazioni viene utilizzato nella replica di tipo merge per determinare le funzionalità che possono essere utilizzate dalle pubblicazioni in un determinato database.Merge replication uses the publication compatibility level to determine which features can be used by publications in a given database.

Contenuto dell'argomentoIn This Topic

Utilizzo di SQL Server Management Studio Using SQL Server Management Studio

Impostare il livello di compatibilità nella pagina Tipi di Sottoscrittore della Creazione guidata nuova pubblicazione.Set the compatibility level on the Subscriber Types page of the New Publication Wizard. Per ulteriori informazioni sull'accesso a questa procedura guidata, vedere Create a Publication.For more information on accessing this wizard, see Create a Publication. Dopo la creazione di uno snapshot della pubblicazione, il livello di compatibilità può essere incrementato, ma non ridotto.After a publication snapshot is created, the compatibility level can be increased but cannot be decreased. Incrementare il livello di compatibilità nella pagina Generale della finestra di dialogo Proprietà pubblicazione - <Pubblicazione>.Increase the compatibility level on the General page of the Publication Properties - <Publication> dialog box. Per ulteriori informazioni sull'accesso a questa finestra di dialogo, vedere View and Modify Publication Properties.For more information about accessing this dialog box, see View and Modify Publication Properties. Incrementando il livello di compatibilità della pubblicazione, qualsiasi sottoscrizione esistente in server che eseguono versioni che risultano precedenti a tale livello di compatibilità non saranno più in grado di eseguire la sincronizzazione.If you increase the publication compatibility level, any existing subscriptions at servers running versions prior to the compatibility level will no longer be able to synchronize.

Nota

Poiché il livello di compatibilità influisce su altre proprietà della pubblicazione e sugli articoli per cui tali proprietà sono valide, non modificare il livello di compatibilità e le altre proprietà in un'unica operazione all'interno della finestra di dialogo.Because the compatibility level has implications for other publication properties and for which article properties are valid, do not change the compatibility level and other properties in the same use of the dialog box. Dopo la modifica della proprietà, lo snapshot per la pubblicazione dovrà essere rigenerato.The snapshot for the publication should be regenerated after the property is changed.

Per impostare il livello di compatibilità della pubblicazioneTo set the publication compatibility level

  • Nella pagina Tipi di Sottoscrittore della Creazione guidata nuova pubblicazione selezionare i tipi di Sottoscrittori che la pubblicazione dovrà supportare.On the Subscriber Types page of the New Publication Wizard, select the types of Subscribers that the publication should support.

Per incrementare il livello di compatibilità della pubblicazioneTo increase the publication compatibility level

  • Nella pagina Generale della finestra di dialogo Proprietà di pubblicazione - <Pubblicazione> selezionare il Livello di compatibilità desiderato.On the General page of the Publication Properties - <Publication> dialog box, select for Compatibility level.

Utilizzo di Transact-SQL Using Transact-SQL

È possibile impostare il livello di compatibilità per una pubblicazione di tipo merge a livello di programmazione codice quando una pubblicazione viene creata o modificata a livello di programmazione in un secondo momento.The compatibility level for a merge publication can either be set programmatically when a publication is created or modified programmatically at a later time. Per impostare o modificare questa proprietà di pubblicazione, è possibile utilizzare le stored procedure di replica.You can use replication stored procedures to set or change this publication property.

Per impostare il livello di compatibilità per una pubblicazione di tipo mergeTo set the publication compatibility level for a merge publication

  1. Nel server di pubblicazione eseguire sp_addmergepublication (Transact-SQL), specificando il valore @publication_compatibility_level per rendere la pubblicazione compatibile con versioni precedenti di MicrosoftMicrosoft SQL ServerSQL Server.At the Publisher, execute sp_addmergepublication (Transact-SQL), specifying a value for @publication_compatibility_level to make the publication compatible with older versions of MicrosoftMicrosoft SQL ServerSQL Server. Per altre informazioni, vedere Create a Publication.For more information, see Create a Publication.

Per modificare il livello di compatibilità di una pubblicazione di tipo mergeTo change the publication compatibility level of a merge publication

  1. Eseguire sp_changemergepublication (Transact-SQL), specificando publication_compatibility_level per @property e il livello di compatibilità della pubblicazione appropriato per @value.Execute sp_changemergepublication (Transact-SQL), specifying publication_compatibility_level for @property and the appropriate publication compatibility level for @value.

Per determinare il livello di compatibilità di una pubblicazione di tipo mergeTo determine the publication compatibility level of a merge publication

  1. Eseguire sp_helpmergepublication (Transact-SQL), specificando la pubblicazione desiderata.Execute sp_helpmergepublication (Transact-SQL), specifying the desired publication.

  2. Individuare il livello di compatibilità della pubblicazione nella colonna backward_comp_level del set di risultati.Locate the publication compatibility level in the backward_comp_level column in the result set.

Esempi (Transact-SQL) Examples (Transact-SQL)

In questo esempio viene creata una pubblicazione di tipo merge e viene impostato il livello di compatibilità della pubblicazione.This example creates a merge publication and sets the publication compatibility level.

-- To avoid storing the login and password in the script file, the values   
-- are passed into SQLCMD as scripting variables. 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".  

--Add a new merge publication.  
DECLARE @publicationDB AS sysname;  
DECLARE @publication AS sysname;  
DECLARE @login AS sysname;  
DECLARE @password AS sysname;  
SET @publicationDB = N'AdventureWorks2012';   
SET @publication = N'AdvWorksSalesOrdersMerge'   
SET @login = $(Login);  
SET @password = $(Password);  

-- Create a new merge publication.   
USE [AdventureWorks2012]  
EXEC sp_addmergepublication   
@publication = @publication,   
-- Set the compatibility level to SQL Server 2014.  
@publication_compatibility_level = '120RTM';   

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

In questo esempio viene modificato il livello di compatibilità per la pubblicazione di tipo merge.This example changes the publication compatibility level for the merge publication.

Nota

È possibile che la modifica del livello di compatibilità della pubblicazione non sia consentita se nella pubblicazione vengono utilizzate caratteristiche che richiedono un livello di compatibilità specifico.Changing the publication compatibility level might not be allowed if the publication uses any features that require a particular compatibility level. Per altre informazioni, vedere Compatibilità con le versioni precedenti della replica.For more information, see Replication Backward Compatibility.

DECLARE @publication AS sysname;  
SET @publication = N'AdvWorksSalesOrdersMerge' ;  

-- Change the publication compatibility level to   
-- SQL Server 2008 or later.  
EXEC sp_changemergepublication   
@publication = @publication,   
@property = N'publication_compatibility_level',   
@value = N'100RTM';  
GO  

In questo esempio viene restituito il livello di compatibilità corrente per la pubblicazione di tipo merge.This example returns the current publication compatibility level for the merge publication.

DECLARE @publication AS sysname;  
SET @publication = N'AdvWorksSalesOrdersMerge' ;  
EXEC sp_helpmergepublication   
@publication = @publication;  
GO  

Vedere ancheSee Also

Create a PublicationCreate a Publication