Cómo establecer el nivel de compatibilidad para las publicaciones de mezcla (programación de la replicación con Transact-SQL)
El nivel de compatibilidad para una publicación de mezcla se puede establecer mediante programación cuando una publicación se crea o bien, se puede modificar mediante programación en un momento posterior. Puede usar procedimientos almacenados de replicación para establecer o cambiar esta propiedad de publicación. Para obtener más información acerca del nivel de compatibilidad de publicación y los requisitos y restricciones relacionados, vea la sección "Nivel de compatibilidad para publicaciones de mezcla" en el tema Usar varias versiones de SQL Server en una topología de replicación.
Para establecer el nivel de compatibilidad de la publicación para una publicación de mezcla
- En el publicador, ejecute sp_addmergepublication (Transact-SQL), especificando un valor para @publication_compatibility_level para que la publicación sea compatible con versiones anteriores de MicrosoftSQL Server. Para obtener más información, vea Cómo crear una publicación (programación de la replicación con Transact-SQL).
Para cambiar el nivel de compatibilidad de la publicación de una publicación de mezcla
- Ejecute sp_changemergepublication (Transact-SQL), especificando publication_compatibility_level para @property y el nivel de compatibilidad de la publicación adecuado para @value.
Para determinar el nivel de compatibilidad de la publicación de una publicación de mezcla
Ejecute sp_helpmergepublication (Transact-SQL), especificando la publicación deseada.
Busque el nivel de compatibilidad de la publicación en la columna de backward_comp_level en el conjunto de resultados.
Ejemplo
Este ejemplo crea una publicación de mezcla y establece el nivel de compatibilidad de la publicación.
-- 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'AdventureWorks';
SET @publication = N'AdvWorksSalesOrdersMerge'
SET @login = $(Login);
SET @password = $(Password);
-- Create a new merge publication.
USE [AdventureWorks]
EXEC sp_addmergepublication
@publication = @publication,
-- Set the compatibility level to SQL Server 2000 SP3.
@publication_compatibility_level = '80RTM';
-- Create the snapshot job for the publication.
EXEC sp_addpublication_snapshot
@publication = @publication,
@job_login = @login,
@job_password = @password;
GO
Este ejemplo cambia el nivel de compatibilidad de la publicación para la publicación de mezcla.
[!NOTA]
Se podría denegar cambiar el nivel de compatibilidad de la publicación si la publicación usa cualquier característica que requiera un nivel de compatibilidad determinado. Para obtener más información, vea Compatibilidad con versiones anteriores de replicación.
DECLARE @publication AS sysname
SET @publication = N'AdvWorksSalesOrdersMerge'
-- Change the publication compatibility level to
-- SQL Server 2005.
EXEC sp_changemergepublication
@publication = @publication,
@property = N'publication_compatibility_level',
@value = N'90RTM'
GO
Este ejemplo devuelve el nivel de compatibilidad de la publicación actual para la publicación de mezcla.
DECLARE @publication AS sysname
SET @publication = N'AdvWorksSalesOrdersMerge'
EXEC sp_helpmergepublication
@publication = @publication;
GO