Usuário com melhor resposta
Problema com dados da Replicação

Pergunta
-
Boa Tarde. Estou tendo um problema com a replicação do SQL Server 2005. O problema é o seguinte. Em uma certa empresa o valor dos produtos são atualizados mas de uma hora para outra eles voltam para o valor antigo. Por exemplo eu mudo o valor de uma mesa que hoje custa R$ 40,00 para R$ 50,00 e de uma hora pra outra sem seguir nenhuma lógica o valor volta para R$ 40,00. Já tentamos refazer a replicação entre os computadores (são dois computadores), tentamos reinstalar o SQL Server mas o problema persiste. Será que é alguma configuração do Sql que estamos deixando passar despercebida? Alguém tem alguma ideia do que pode ser?
- Editado Jonas Silva SC quinta-feira, 24 de maio de 2012 19:05
- Movido Gustavo Maia Aguiar sexta-feira, 1 de junho de 2012 17:24 (De:SQL Server - Infra Geral)
quinta-feira, 24 de maio de 2012 19:04
Respostas
-
Oi Jonas, verificar o rowguid da tua tabela antes e depois de o valor voltar.
Faz um update na tua origem para o valor que tu quer e verifica se ele esta alterando este valor.
Essa coluna é responsável pela replicação, ela quem diz quando deve ou não ser replicado, faz isso e verifica como esta na tabela que esta trazendo o valor de volta.
Caso não funcione desta forma, tenta fazer um update no outro banco ver se ele traz o valor de lá, pode estar com problemas na replicação de volta, ai ele traz o valor de lá por achar que é o mais recente.
Espero que ajude, vlew.
--
Marcus Vinícius Bittencourt
blog: isqlserver.wordpress.com
www.sqlserverRS.com.br- Marcado como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 5 de junho de 2018 11:18
quinta-feira, 31 de maio de 2012 00:01
Todas as Respostas
-
Olá Jonas,
Qual o tipo de replicação você utiliza?
Esse valor é alterado na origem ou destino?
sexta-feira, 25 de maio de 2012 14:06 -
Olá Jonas!
Por favor passe maiores informações sobre a replicação, será que ela não está configurada invertida?
Um abraço.
Cesar Blumm
Cesar Blumm http://sqlbrasil.blogspot.com http://sharepointtche.wordpress.com
sexta-feira, 25 de maio de 2012 14:28 -
Wellington
Uso a Merge. Boa pergunta. Assim, os dados dos assinantes são enviados para o servidor. Não tinha me deparado ainda com essa dúvida se o valor é alterado na origem ou destino.
segunda-feira, 28 de maio de 2012 12:32 -
César
Trabalhamos com replicação em outros clientes nossos e não acontece esse problema e a configuração da replicação não muda entre elas.
segunda-feira, 28 de maio de 2012 12:33 -
Olá Jonas,
O tipo de replicação Merge costuma ser utilizada quanto trabalhamos com dispositivos moveis que utilizam SQL Server Compact ou quando precisamos manipular dados nas duas pontas da replicação.
Esse seria seu cenario?
Caso não, acho interessante utilizar a replicação transacional.
segunda-feira, 28 de maio de 2012 16:54 -
No nosso caso precisamos manipular dados nas duas pontas da replicação. Por isso escolhemos o merge.segunda-feira, 28 de maio de 2012 17:53
-
Boa tarde.
Existem N problemas para esse assunto:
1) Você tem certeza que está replicando os dados?
2) O DBA não criou nenhuma procedure para acertar esse tipo de valor?
3) No Banco de Publicações está para replicar instantâneo ou existem horários para tal replicação?
4) Como foi configurado sua distribuição?
segunda-feira, 28 de maio de 2012 19:17 -
Jonas,
O serviço MSDTC esta configurado para trabalhar com qual conta de usuário? Ele foi configurado para rodar nas duas pontas eu especificamente no servidor que esta publicando os dados?
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]
segunda-feira, 28 de maio de 2012 19:32Moderador -
Molombito - Boa tarde
Respondendo as perguntas:
1 - Sim, está, já verifiquei isso.
2 - Não.
3 - Está programado pra realizar a atualização instantaneamente.
4 - Normal para rodar com merge.
Acabei de verificar que á varias conflitos na replicação, em uma tabela chegou a dar mais de 30 mil conflitos.... Achei estranho isso.
segunda-feira, 28 de maio de 2012 20:04 -
Nas duas pontas....segunda-feira, 28 de maio de 2012 20:05
-
Oi Jonas, verificar o rowguid da tua tabela antes e depois de o valor voltar.
Faz um update na tua origem para o valor que tu quer e verifica se ele esta alterando este valor.
Essa coluna é responsável pela replicação, ela quem diz quando deve ou não ser replicado, faz isso e verifica como esta na tabela que esta trazendo o valor de volta.
Caso não funcione desta forma, tenta fazer um update no outro banco ver se ele traz o valor de lá, pode estar com problemas na replicação de volta, ai ele traz o valor de lá por achar que é o mais recente.
Espero que ajude, vlew.
--
Marcus Vinícius Bittencourt
blog: isqlserver.wordpress.com
www.sqlserverRS.com.br- Marcado como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 5 de junho de 2018 11:18
quinta-feira, 31 de maio de 2012 00:01 -
Jonas,
Vale ressaltar que esta coluna RowGuid é gerada automáticamente pelo SQL Server como um UniqueIdentifier, os valores adicionados para esta coluna são gerados de forma direta e não pode ser alterados. Alias, este coluna é o controle e possível versionamento dos dados que estão sendo replicados.
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 sexta-feira, 27 de julho de 2012 14:42
sexta-feira, 27 de julho de 2012 12:17Moderador -
manda os logs para da uma olhada...quarta-feira, 22 de agosto de 2012 16:45