Como definir o nível de compatibilidade para publicações de mesclagem (Programação Transact-SQL de replicação)
O nível de compatibilidade para uma publicação de mesclagem, pode ser definida, programaticamente, quando uma publicação é criada ou modificada programaticamente depois. Você pode usar procedimentos armazenados de replicação para definir ou alterar esta propriedade de publicação. Para obter mais informações sobre níveis de compatibilidade de publicação e de requisitos e restrições relacionados, consulte a seção "Nível de compatibilidade para publicações de mesclagem" no tópico Usando várias versões do SQL Server em uma topologia de replicação.
Para definir o nível de compatibilidade para uma publicação de mesclagem
- No Publicador, execute sp_addmergepublication (Transact-SQL), especificando um valor para @publication_compatibility_level para tornar a publicação compatível com versões antigas Microsoft SQL Server. Para obter mais informações, consulte Como criar uma publicação (Programação Transact-SQL de replicação).
Para definir o nível de compatibilidade da publicação de uma publicação de mesclagem
- Execute sp_changemergepublication (Transact-SQL), especificando publication_compatibility_level para @property e o nível de compatibilidade da publicação adequada para @value.
Para determinar o nível de compatibilidade da publicação de uma publicação de mesclagem
Execute sp_helpmergepublication (Transact-SQL), especificando a publicação desejada.
Localize o nível de compatibilidade da publicação na coluna backward_comp_level no conjunto de resultados.
Exemplo
Esse exemplo cria uma publicação de mesclagem e define o nível de compatibilidade da publicação.
-- 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'AdventureWorks2008R2';
SET @publication = N'AdvWorksSalesOrdersMerge'
SET @login = $(Login);
SET @password = $(Password);
-- Create a new merge publication.
USE [AdventureWorks2008R2]
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
Esse exemplo altera uma publicação de mesclagem e define o nível de compatibilidade da publicação.
Observação |
---|
Alterando o nível de compatibilidade da publicação pode não ser permitido se a publicação usar qualquer recurso que necessite de um nível de compatibilidade particular. Para obter mais informações, consulte Compatibilidade com versões anteriores de replicação. |
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
Esse exemplo retorna o nível de compatibilidade da publicação atual para a publicação de mesclagem.
DECLARE @publication AS sysname
SET @publication = N'AdvWorksSalesOrdersMerge'
EXEC sp_helpmergepublication
@publication = @publication;
GO