Usuário com melhor resposta
replicação transacional

Pergunta
-
Alguém poderia me explicar porque a replicação transacional necessita de uma chave primária?
Qual a lógica de existir essa chave primária?Se alguém deletar algum registro, pode haver duplicidade(replicação transacional) né isso? mais iai, qual a utilização dessa primary key?
- Movido Gustavo Maia Aguiar segunda-feira, 29 de agosto de 2011 23:11 (De:Gerenciamento, Configuração, Instalação, e Segurança)
Respostas
-
Olá JustSQL na realidade esta quebra de integridade nunca vai acontecer na replicação devido a necessidade de existência da chave.
Não vejo uma forma de alterar a chave fazendo perder integridade. Se existe chave, existe integridade caso esta alteração não reflita os dados da tabela tu nem conseguirá alterar esta chave na base original.
Se tiver algum caso que exemplifique este problema nos encaminhe podemos testar para ver o que acontece.
Mas por regra esta chave existe exatamente para que não ocorra perda de integridade e os teus dados saim da origem e possam ser replicados diretamente na outra base da mesma forma.
Se alterar a chave na origem será replicado e alterado no destino e consequentemente os dados posteriores.
Qualquer coisa manda ai.
Vlew.
- Marcado como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 5 de junho de 2018 11:22
Todas as Respostas
-
JustSQL,
A primary key é utilizado na processo de replicação transacional para controle e integridade dos dados que estão sendo transacionados, além de possibilitar uma forma de relacionamento dos dados replicados.
Ao configurar um processo de replicação o SQL Server acrescenta nas tabelas envolvidas na replicação um campo MS_REPL e justamente este campo vai receber um valor correspondente a ordem de replicação da linha.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]- Sugerido como Resposta Marcus Vinícius BittencourtMVP segunda-feira, 19 de dezembro de 2011 10:38
-
Junior,
Vamo supor o seguinte;
Tenho uma replicação transacional da matriz para uma filial.
Matriz: Centro
Filial: SalvadorSe caso eu escolhe a replicação transacional, e outro carinha atualizou a chave primária, ou fez alguma modificação fazendo com que perca a integridade, como vai funcionar essa integridade dos dados entao?
-
JustSQL,
Cara, realmente é algo a ser considerado, mas de que forma você imagina ou poderia ocorrer esta quebra de integridade, pois se estamos falando de chave primária existem algumas regras que o próprio SQL Server respeita como também a aplicação.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com] -
Olá JustSQL na realidade esta quebra de integridade nunca vai acontecer na replicação devido a necessidade de existência da chave.
Não vejo uma forma de alterar a chave fazendo perder integridade. Se existe chave, existe integridade caso esta alteração não reflita os dados da tabela tu nem conseguirá alterar esta chave na base original.
Se tiver algum caso que exemplifique este problema nos encaminhe podemos testar para ver o que acontece.
Mas por regra esta chave existe exatamente para que não ocorra perda de integridade e os teus dados saim da origem e possam ser replicados diretamente na outra base da mesma forma.
Se alterar a chave na origem será replicado e alterado no destino e consequentemente os dados posteriores.
Qualquer coisa manda ai.
Vlew.
- Marcado como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 5 de junho de 2018 11:22
-
Marcus,
Eu concordo com você, pois todo controle transacional ocorrido dentro da transação é através da coluna chave criada durante a configuração da replicação.
Talvez possa existir alguma outra configuração ou propriedade do ambiente que o JustSQL ainda não identificou.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]