ID do artigo: 971970 - Última revisão: terça-feira, 14 de julho de 2009 - Revisão: 1.0

CORRECÇÃO: Você não pode inserir linhas ou carregar alterações nas tabelas de assinante do SQL Server 2005 Compact Edition após você executa o procedimento "sp_changemergearticle" armazenados ou adicionar um novo artigo de publicação de mesclagem quando outro artigo possui uma coluna IDENTITY

Download do hotfix está disponívelDownload do Hotfix Disponível
Visualizar e solicitar downloads de hotfix
Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Recolher tudo

Sintomas

Considere o seguinte cenário:
  • Criar uma publicação de mesclagem no SQL Server.
  • Adicionar um artigo de tabela que possui uma coluna IDENTITY à publicação.
  • Você adiciona um filtro com parâmetros de linha para o artigo.
  • Você criar uma inscrição do SQL Server 2005 Compact Edition para a publicação.
  • Sincronizar a inscrição.
Em seguida, execute uma das seguintes operações:
  • No Editor, você executar o procedimento sp_changemergearticle armazenados para alterar uma das seguintes propriedades do artigo:
    • processing_order
    • delete_tracking
    • partition_options
  • Você adiciona um novo artigo à publicação e, em seguida, inicie o Snapshot Agent.
Depois de sincronizar a inscrição, quando você tenta inserir uma linha na tabela de assinante, você encontrar um dos seguintes problemas:
  • Se houver um registro na tabela que tem um valor de 1 para a coluna IDENTITY , você receber a seguinte mensagem de erro::
    Erro principal 0x80040E2F, erro secundária 25016
    ><Insert Statement>
    Um valor duplicado não pode ser inserido em um índice exclusivo. [Nome da tabela = <TableName>, nome da restrição = <ConstraintName> ]
  • Se não há registros na tabela tiverem um valor de 1 para a coluna IDENTITY , você pode inserir uma linha com êxito na tabela de assinante. No entanto, quando você sincronizar a inscrição para carregar a alteração para o publisher, você receber a seguinte mensagem de erro:
    Uma linha de assinante ao aplicar no Editor. Examine os parâmetros do erro e as tabelas de log de conflitos no Editor para determinar o motivo da linha Falha ao aplicar. [Nome da tabela = <TableName>, guid de linha = <GUID> ]
    HRESULT 0 X 80004005 (28802)

Causa

Esse problema ocorre porque a tabela no assinante é reseeded ao valor de 1 após executar uma das seguintes operações:
  • No Editor, você executar o procedimento sp_changemergearticle armazenados para alterar uma das seguintes propriedades do artigo:
    • processing_order
    • delete_tracking
    • partition_options
  • Você adiciona um novo artigo à publicação e, em seguida, inicie o Snapshot Agent.
O valor da coluna AUTOINC_SEED indica a propagação da coluna IDENTITY . Para verificar a propagação da coluna IDENTITY , você executar a instrução a seguir em relação a tabela no assinante:
SELECT AUTOINC_MIN, AUTOINC_MAX, AUTOINC_NEXT, AUTOINC_INCREMENT, AUTOINC_SEED
FROM INFORMATION_SCHEMA.COLUMNS
WHERE AUTOINC_MIN IS NOT NULL

Resolução

Informações sobre o hotfix

Um hotfix suportado está disponível no Microsoft. No entanto, esse hotfix destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico.

Se o hotfix está disponível para download, há uma seção "Download de Hotfix disponível" na parte superior neste artigo da Base de dados de Conhecimento. Se esta seção não for exibido, envie uma solicitação para suporte e atendimento ao cliente Microsoft para obter o hotfix.

Observação Se ocorrerem problemas adicionais ou se qualquer solução de problemas é necessária, talvez você precise criar uma solicitação de serviço separada. Os custos normais de suporte serão aplicados a questões de suporte adicionais e problemas que não se qualificam para esse hotfix específico. Para obter uma lista completa de números de telefone de suporte e Atendimento Microsoft ou para criar uma solicitação de serviço separada, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Observação O formulário "Download de Hotfix disponível" exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma, é porque um hotfix não está disponível para esse idioma.

Pré-requisitos

Não há nenhum pré-requisito para instalar esse hotfix.

Requisitos de reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix.

Informações sobre a substituição do hotfix

Esse hotfix não substitui um hotfix lançado anteriormente.

Informações sobre o arquivo

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário no item Data e hora no painel de controle.
Para todas as versões do Windows CE 5.0 com base em correção do ARMV4i
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempo
Sqlce30.dev.ENU.wce5.armv4i.cabNão aplicável324,83416-Jun-200912: 50
Sqlce30.REPL.wce5.armv4i.cabNão aplicável758,30616-Jun-200912: 50
Sqlce30.wce5.armv4i.cabNão aplicável1,622,65416-Jun-200912: 50
Para todos com base em ARMV4 versões compatíveis do Windows CE 4.0 para dispositivos Pocket PC
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempo
Sqlce30.dev.ENU.PPC.wce4.ARMV4.cabNão aplicável320,23416-Jun-200912: 29
Sqlce30.PPC.wce4.ARMV4.cabNão aplicável1,580,66216-Jun-200912: 29
Sqlce30.REPL.PPC.wce4.ARMV4.cabNão aplicável736,26616-Jun-200912: 29
Para todas as versões com base em 86 x do SQL Server 2005 Compact Edition
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempo
Eula_en.rtfNão aplicável114,90003-Jun-200910: 55
Sqlceca30.dll3.0.5300.14293,76015-Jun-200922: 55
Sqlcecompact30.dll3.0.5300.1459,28015-Jun-200922: 55
Sqlceer30en.dll3.0.5300.14136,09615-Jun-200922: 57
Sqlceme30.dll3.0.5300.1451,07215-Jun-200922: 55
Sqlceoledb30.dll3.0.5300.14139,13615-Jun-200922: 55
Sqlceqp30.dll3.0.5300.14532,35215-Jun-200922: 55
Sqlcese30.dll3.0.5300.14290,68815-Jun-200922: 55
System.Data.SqlServerCe.dll3.0.5300.14235,40815-Jun-200921: 13

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Compact Edition
Palavras-chave: 
kbmt kbsurveynew kbhotfixserver kbautohotfix kbexpertiseadvanced kbqfe kbfix KB971970 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 971970  (http://support.microsoft.com/kb/971970/en-us/ )