CORRECÇÃO: Mensagem de erro quando sincroniza dados para uma publicação transaccional em SQL Server 2008: "procedimento ou função ' sp_MSins_dbo <tablename> '_msrepl_ccs espera parâmetro '@ c7', que não foi fornecido"

Traduções de Artigos Traduções de Artigos
Artigo: 959784 - Ver produtos para os quais este artigo se aplica.
Erro: # 50003796 (correcção SQL)
A Microsoft distribui correcções Microsoft SQL Server 2008 como um ficheiro transferível. Uma vez que as correcções são cumulativas, cada nova versão contém todas as correcções e todas as correcções de segurança incluídas com o SQL Server 2008 anterior corrigir lançamento.
Expandir tudo | Reduzir tudo

Sintomas

Considere o seguinte cenário. No Microsoft SQL Server 2008, configurar uma publicação transaccional. Adicionar uma tabela que contém uma coluna calculada para a publicação como um artigo. A tabela tem uma chave primária composta que contém a coluna calculada. Quando sincroniza dados, o Distribution Agent falha e receber a seguinte mensagem de erro no Monitor de replicação:
Procedimento ou função 'sp_MSins_dbo TableName _msrepl_ccs' espera parâmetro '@ c7', que não foi fornecido.

Causa

No cenário que é descrito na "Sintomas" secção, quando está pendente uma declaração DML concorrente e está a criar um snapshot, é criado um procedimento armazenado específico que chama sp_MSins_dbo TableName _msrepl_ccs para propagar a declaração DML. Um parâmetro obrigatório não é transmitido para o procedimento armazenado quando o serviço de distribuição chama o procedimento armazenado. Por conseguinte, o Distribution Agent falha.

Resolução

A correcção deste problema primeiro foi disponibilizada em 2 de actualização cumulativa. Para obter mais informações sobre como obter este pacote de actualização cumulativa para o SQL Server 2008, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
958186Pacote de actualização cumulativa 2 para o SQL Server 2008
Nota Uma vez que as compilações são cumulativas, cada nova versão de correcção contém todas as correcções e todas as correcções de segurança incluídas com o SQL Server 2008 anterior corrigir lançamento. Recomendamos que considere aplicar a versão de correcção mais recente que contenha esta correcção. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
956909O SQL Server 2008 cria disponibilizadas após o lançamento do SQL Server 2008

Como contornar

Para contornar este problema, utilize um dos seguintes métodos:
  • Não crie o instantâneo quando uma declaração DML está em execução.
  • Modificar o esquema de tabela para que a coluna calculada não está incluída na chave primária.
  • Altere as definições a replicação para o artigo. Para tal, definir a opção INSERT formato entrega a instrução INSERT em vez de para chamada < procedimento armazenado > na caixa de diálogo Propriedades do artigo . Por predefinição, à opção INSERT formato de entrega é definida como chamada < procedimento armazenado >.
  • Crie um procedimento armazenado personalizado que executar a operação de inserção. Publicar esse procedimento armazenado para que qualquer chamada de procedimento armazenado será replicado.
  • Sincronize dados utilizando uma cópia de segurança. Para mais informações, visite o seguinte Web site da Microsoft:
    http://msdn.microsoft.com/en-us/library/ms151705.aspx

Ponto Da Situação

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

Mais Informação

Para obter mais informações sobre os ficheiros que são alterados e para obter informações sobre quaisquer pré-requisitos para aplicar o pacote de actualização cumulativa que contém a correcção que é descrita neste artigo da base de dados de conhecimento da Microsoft, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
958186Pacote de actualização cumulativa 2 para o SQL Server 2008

Referências

Para obter mais informações sobre a lista de compilações disponíveis após o lançamento do SQL Server 2008, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
956909O SQL Server 2008 cria disponibilizadas após o lançamento do SQL Server 2008
Para obter mais informações sobre o modelo de assistência incremental para o SQL Server, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
935897Um modelo de assistência incremental está disponível a equipa do SQL Server para proporcionar correcções para problemas comunicados
Para obter mais informações sobre o esquema de atribuição de nomes para as actualizações do SQL Server, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
822499Novo esquema de atribuição de nomes de ficheiros para pacotes de actualização de software do Microsoft SQL Server
Para obter mais informações sobre a terminologia de actualização de software, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
824684Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

Propriedades

Artigo: 959784 - Última revisão: 18 de novembro de 2008 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Workgroup
Palavras-chave: 
kbmt kbexpertiseadvanced kbqfe kbfix KB959784 KbMtpt
Traduçã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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 959784

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com