Définir le niveau de compatibilité des publications de fusionSet the Compatibility Level for Merge Publications

Cette rubrique s’applique à : OuiSQL Serveraucunbase de données SQL AzureaucunAzure SQL Data Warehouse aucun Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Cette rubrique explique comment définir le niveau de compatibilité pour les publications de fusion dans SQL Server 2017SQL Server 2017 à l'aide de SQL Server Management StudioSQL Server Management Studio ou de 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. La réplication de fusion utilise le niveau de compatibilité de publication pour déterminer les fonctionnalités qui peuvent être utilisées par des publications dans une base de données particulière.Merge replication uses the publication compatibility level to determine which features can be used by publications in a given database.

Dans cette rubriqueIn This Topic

Utilisation de SQL Server Management StudioUsing SQL Server Management Studio

Définir le niveau de compatibilité sur la page Types d'abonnés de l'Assistant Nouvelle publication.Set the compatibility level on the Subscriber Types page of the New Publication Wizard. Pour plus d'informations sur l'accès à cet Assistant, consultez Create a Publication.For more information on accessing this wizard, see Create a Publication. Après la création d'un instantané de publication, le niveau de compatibilité peut être augmenté, mais il ne peut pas être diminué.After a publication snapshot is created, the compatibility level can be increased but cannot be decreased. Augmentez le niveau de compatibilité dans la page Général de la boîte de dialogue Propriétés de la publication - <Publication>.Increase the compatibility level on the General page of the Publication Properties - <Publication> dialog box. Pour plus d'informations sur l'accès à cette boîte de dialogue, consultez Afficher et modifier les propriétés d’un serveur de publication.For more information about accessing this dialog box, see View and Modify Publication Properties. Si vous augmentez le niveau de compatibilité de la publication, tous les abonnements existants sur les serveurs exécutant des versions antérieures au niveau de compatibilité ne peuvent plus se synchroniser.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.

Note

Le niveau de compatibilité ayant des implications sur d'autres propriétés de la publication et sur la détermination de la validité des propriétés des articles, ne modifiez pas le niveau de compatibilité ni d'autres propriétés dans la boîte de dialogue.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. L'instantané pour la publication doit être régénéré après la modification de la propriété.The snapshot for the publication should be regenerated after the property is changed.

Pour définir le niveau de compatibilité de la publicationTo set the publication compatibility level

  • Sur la page Types d'abonnés de l'Assistant Nouvelle publication, sélectionnez les types d'abonnés que la publication doit prendre en charge.On the Subscriber Types page of the New Publication Wizard, select the types of Subscribers that the publication should support.

Pour augmenter le niveau de compatibilité de la publicationTo increase the publication compatibility level

  • Dans la page Général de la boîte de dialogue Propriétés de la publication - <Publication>, sélectionnez Niveau de compatibilité.On the General page of the Publication Properties - <Publication> dialog box, select for Compatibility level.

Utilisation de Transact-SQLUsing Transact-SQL

Le niveau de compatibilité d'une publication de fusion peut être défini par programme au moment de la création d'une publication ou être modifié par programme ultérieurement.The compatibility level for a merge publication can either be set programmatically when a publication is created or modified programmatically at a later time. Vous pouvez utiliser des procédures stockées de réplication pour définir ou modifier cette propriété de publication.You can use replication stored procedures to set or change this publication property.

Pour définir le niveau de compatibilité d'une publication de fusionTo set the publication compatibility level for a merge publication

  1. Sur le serveur de publication, exécutez sp_addmergepublication (Transact-SQL), en spécifiant une valeur pour @publication_compatibility_level afin de rendre la publication compatible avec des versions antérieures de 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. Pour plus d’informations, consultez Create a Publication.For more information, see Create a Publication.

Pour modifier le niveau de compatibilité d'une publication de fusionTo change the publication compatibility level of a merge publication

  1. Exécutez sp_changemergepublication (Transact-SQL), en spécifiant publication_compatibility_level pour @property et le niveau de compatibilité de publication approprié pour @value.Execute sp_changemergepublication (Transact-SQL), specifying publication_compatibility_level for @property and the appropriate publication compatibility level for @value.

Pour déterminer le niveau de compatibilité d'une publication de fusionTo determine the publication compatibility level of a merge publication

  1. Exécutez sp_helpmergepublication (Transact-SQL), en spécifiant la publication souhaitée.Execute sp_helpmergepublication (Transact-SQL), specifying the desired publication.

  2. Recherchez le niveau de compatibilité de la publication dans la colonne backward_comp_level du jeu de résultats.Locate the publication compatibility level in the backward_comp_level column in the result set.

Exemples (Transact-SQL)Examples (Transact-SQL)

Cet exemple crée une publication de fusion et définit son niveau de compatibilité.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  

Cet exemple modifie le niveau de compatibilité d'une publication de fusionThis example changes the publication compatibility level for the merge publication.

Note

La modification du niveau de compatibilité de la publication peut être interdite si la publication utilise une fonctionnalité qui requiert un niveau de compatibilité particulier.Changing the publication compatibility level might not be allowed if the publication uses any features that require a particular compatibility level. Pour plus d’informations, consultez Compatibilité descendante de la réplication.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  

Cet exemple retourne le niveau de compatibilité actuel de la publication de fusionThis 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  

Voir aussiSee Also

Create a PublicationCreate a Publication