Festlegen des Kompatibilitätsgrads von Mergeveröffentlichungen

Gilt für:SQL Server

In diesem Thema wird beschrieben, wie Sie die Kompatibilitätsebene für Zusammenführungspublikationen in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL festlegen. Bei der Mergereplikation wird anhand des Kompatibilitätsgrades der Veröffentlichung bestimmt, welche Funktionen von Veröffentlichungen in der jeweiligen Datenbank verwendet werden können.

In diesem Thema

Verwendung von SQL Server Management Studio

Der Kompatibilitätsgrad wird auf der Seite Abonnententypen des Assistenten für neue Veröffentlichung festgelegt. Weitere Informationen zum Zugreifen auf diesen Assistenten finden Sie unter Create a Publicationfestgelegt wird. Nach dem Erstellen einer Veröffentlichungsmomentaufnahme kann der Kompatibilitätsgrad zwar erhöht, nicht aber gesenkt werden. Erhöhen Sie die Kompatibilitätsebene auf der Seite "Allgemein " des Dialogfelds "Publikationseigenschaften - <Publikation> ". Weitere Informationen zum Zugreifen auf dieses Dialogfeld finden Sie unter View and Modify Publication Properties. Wenn Sie den Veröffentlichungskompatibilitätsgrad erhöhen, können alle vorhandenen Abonnements auf Servern, auf denen eine Version vor diesem Kompatibilitätsgrad ausgeführt wird, nicht mehr synchronisiert werden.

Hinweis

Da der Kompatibilitätsgrad Auswirkungen auf andere Veröffentlichungseigenschaften und darauf hat, welche Artikeleigenschaften gültig sind, dürfen Sie den Kompatibilitätsgrad nicht gleichzeitig mit anderen Eigenschaften im Dialogfeld ändern. Die Momentaufnahme für die Veröffentlichung sollte nach dem Ändern der Eigenschaften neu generiert werden.

So legen Sie den Veröffentlichungskompatibilitätsgrad fest

  • Wählen Sie auf der Seite Abonnementtypen des Assistenten für neue Veröffentlichung die Abonnententypen aus, die die Veröffentlichung unterstützen soll.

So erhöhen Sie den Veröffentlichungskompatibilitätsgrad

  • Wählen Sie auf der Seite "Allgemein" des Dialogfelds "Publikationseigenschaften <– Publikation>" die Option "Kompatibilitätsstufe" aus.

Verwenden von Transact-SQL

Der Kompatibilitätsgrad einer Mergeveröffentlichung kann entweder programmgesteuert während der Erstellung der Veröffentlichung festgelegt oder zu einem späteren Zeitpunkt programmgesteuert geändert werden. Sie können gespeicherte Replikationsprozeduren verwenden, um diese Veröffentlichungseigenschaft festzulegen oder zu ändern.

So legen Sie den Veröffentlichungskompatibilitätsgrad einer Mergeveröffentlichung fest

  1. Führen Sie im Publisher sp_addmergepublication (Transact-SQL) aus, und geben Sie einen Wert an, um @publication_compatibility_level die Publikation mit älteren Versionen von Microsoft SQL Server kompatibel zu machen. Weitere Informationen finden Sie unter Create a Publication.

So ändern Sie den Veröffentlichungskompatibilitätsgrad einer Mergeveröffentlichung

  1. Führen Sie sp_changemergepublication (Transact-SQL) aus, und geben Sie publication_compatibility_level für @property und die entsprechende Publikationskompatibilitätsstufe für @value.

So bestimmen Sie den Veröffentlichungskompatibilitätsgrad einer Mergeveröffentlichung

  1. Führen Sie sp_helpmergepublication (Transact-SQL) aus, und geben Sie die gewünschte Publikation an.

  2. Suchen Sie den Veröffentlichungskompatibilitätsgrad im Resultset in der backward_comp_level -Spalte.

Beispiele (Transact-SQL)

In diesem Beispiel wird eine Mergeveröffentlichung erstellt und der Veröffentlichungskompatibilitätsgrad festgelegt.

-- 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'AdventureWorks2022';
SET @publication = N'AdvWorksSalesOrdersMerge';
SET @login = $(Login);
SET @password = $(Password);

-- Create a new merge publication.   
USE [AdventureWorks2022];
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 diesem Beispiel wird der Veröffentlichungskompatibilitätsgrad einer Mergeveröffentlichung geändert.

Hinweis

Wenn in der Veröffentlichung Funktionen verwendet werden, die einen bestimmten Kompatibilitätsgrad erfordern, darf der Veröffentlichungskompatibilitätsgrad möglicherweise nicht geändert werden. Weitere Informationen finden Sie unter Abwärtskompatibilität von Replikationen.

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 diesem Beispiel wird der aktuelle Veröffentlichungskompatibilitätsgrad einer Mergeveröffentlichung zurückgegeben.

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

Weitere Informationen

Erstellen einer Veröffentlichung