CORRECÇÃO: Uma restrição de chave externa que você solta em uma tabela no editor não é descartada na tabela no assinante em uma replicação de mesclagem do SQL Server 2005

Traduções deste artigo Traduções deste artigo
ID do artigo: 938825 - Exibir os produtos aos quais esse artigo se aplica.
Erro nº: 50001169 (Hotfix do SQL)

A Microsoft distribui correções do Microsoft SQL Server 2005 como um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todos os as correções de segurança que foram incluídas com o anterior SQL Server 2005 corrigir lançamento.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo descreve o seguinte sobre esta versão de hotfix:
  • Problemas corrigidos pelo pacote de hotfix
  • Os pré-requisitos para instalar o pacote de hotfix
  • Se é necessário reiniciar o computador depois de instalar o pacote de hotfix
  • Se o pacote de hotfix é substituído por qualquer outro pacote de hotfix
  • Se você deve fazer alterações no registro
  • Arquivos que estão contidos no pacote de hotfix

Sintomas

Na replicação de mesclagem Microsoft SQL Server 2005, você pode descartar uma restrição de chave externa em uma tabela no Editor. Depois de sincronizar os dados entre o Editor e o assinante, o agente de mesclagem de replicação não descartar a restrição de chave externa na tabela no assinante.

Esse problema ocorre quando as tabelas relacionadas no Editor e no assinante não pertencem ao esquema dbo.

Causa

Esse problema ocorre porque o agente de mesclagem de replicação executa uma consulta incorreta no assinante. Quando o agente de mesclagem de replicação é executada a consulta, a função OBJECT_ID retorna NULL. Em seguida, a instrução IF EXISTS retorna FALSE. Portanto, o agente de mesclagem de replicação não executa a instrução DROP CONSTRAINT.

A seguir está um exemplo da consulta que o agente de mesclagem de replicação é executado no assinante:
IF EXISTS (SELECT * from sysconstraints WHERE constid = OBJECT_ID (N'[FK_DETAIL_TO_MASTER]')) 
IF OBJECT_ID (N'[Test].[Detail]') IS NOT NULL 
EXEC ('ALTER TABLE [Test].[Detail] DROP CONSTRAINT FK_DETAIL_TO_MASTER')

Resolução

Atualizar informações

Esse hotfix está incluído no pacote de atualizações cumulativas 2 (compilação 3175) para o SQL Server 2005 Service Pack 2 (SP2).

Para resolver o problema descrito neste artigo, execute essas etapas:
  1. Instale o SQL Server 2005 SP2.
  2. Instale atualização cumulativa pacote 2 (compilação 3175) para o SQL Server 2005 SP2.
Para obter mais informações, clique nos números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
913089Como obter o service pack mais recente para o SQL Server 2005
936305Pacote de atualização cumulativa 2 para o SQL Server 2005 Service Pack 2 está disponível

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. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde a próxima atualização de software que contém esse hotfix.

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 exibida, contate o atendimento e suporte 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
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

Você deve ter o SQL Server 2005 SP2 instalado para aplicar esse hotfix.

Informações sobre reinicialização

Não é necessário reiniciar o computador.

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

Esse hotfix não é substituído por nenhum outro hotfix.

Informações do registro

Não é necessário alterar o registro.

Informações sobre o arquivo

Esse hotfix contém apenas os arquivos que são necessárias para corrigir os problemas que este artigo lista. Este hotfix pode não conter todos os arquivos que você deve ter para actualizar completamente um produto para a compilação mais recente.

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.
SQL Server 2005, versão de 32 bits
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Microsoft.AnalysisServices.dll9.0.3175.01,217,90414 De junho de 200715: 05x 86
Microsoft.SQLServer.maintenanceplantasks.dll9.0.3175.0296,30414 De junho de 200715: 05x 86
Msmdlocal.dll9.0.3175.015,948,14414 De junho de 200715: 05x 86
Mssqlsystemresource.ldfNão aplicável524,28814 De junho de 200711: 22Não aplicável
Mssqlsystemresource.mdfNão aplicável40,173,56814 De junho de 200711: 22Não aplicável
Odsole70.dll2005.90.3175.059,24814 De junho de 200715: 05x 86
Rdistcom.dll2005.90.3175.0644,97614 De junho de 200715: 05x 86
Replmerg.exe2005.90.3175.0320,88014 De junho de 200715: 05x 86
Replrec.dll2005.90.3175.0784,75214 De junho de 200715: 05x 86
Sqlaccess.dll2005.90.3175.0350,57614 De junho de 200715: 05x 86
Sqlservr.exe2005.90.3175.029,193,07214 De junho de 200715: 05x 86
Sqlwep.dll2005.90.3175.090,99214 De junho de 200715: 05x 86
Sqsrvres.dll2005.90.3175.070,51214 De junho de 200715: 05x 86
Sysdbupg.SQLNão aplicável510,62213 De junho de 200720: 46Não aplicável
Xpstar90.dll2005.90.3175.0295,79214 De junho de 200715: 05x 86
SQL Server 2005, versão com base em 64 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Microsoft.AnalysisServices.dll9.0.3175.01,217,90414 De junho de 200714: 05x 86
Microsoft.SQLServer.maintenanceplantasks.dll9.0.3175.0296,30414 De junho de 200714: 05x 86
Msmdlocal.dll9.0.3175.015,948,14414 De junho de 200714: 05x 86
Mssqlsystemresource.ldfNão aplicável524,28814 De junho de 200710: 22Não aplicável
Mssqlsystemresource.mdfNão aplicável40,173,56814 De junho de 200710: 22Não aplicável
Odsole70.dll2005.90.3175.090,48014 De junho de 200716: 41x 64
Rdistcom.dll2005.90.3175.0828,78414 De junho de 200716: 41x 64
Replmerg.exe2005.90.3175.0417,64814 De junho de 200716: 41x 64
Replrec.dll2005.90.3175.01,011,56814 De junho de 200716: 41x 64
Sqlaccess.dll2005.90.3175.0357,74414 De junho de 200716: 41x 86
Sqlservr.exe2005.90.3175.039,674,22414 De junho de 200716: 41x 64
Sqlwep.dll2005.90.3175.090,99214 De junho de 200714: 05x 86
Sqlwep.dll2005.90.3175.0123,76014 De junho de 200716: 41x 64
Sqsrvres.dll2005.90.3175.083,31214 De junho de 200716: 41x 64
Sysdbupg.SQLNão aplicável510,62213 De junho de 200719: 46Não aplicável
Xpstar90.dll2005.90.3175.0546,67214 De junho de 200716: 41x 64
SQL Server 2005, versão de arquitetura Itanium
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Microsoft.AnalysisServices.dll9.0.3175.01,217,90414 De junho de 200715: 05x 86
Microsoft.SQLServer.maintenanceplantasks.dll9.0.3175.0296,30414 De junho de 200715: 05x 86
Msmdlocal.dll9.0.3175.049,904,49614 De junho de 200719: 56IA-64
Mssqlsystemresource.ldfNão aplicável524,28814 De junho de 200711: 22Não aplicável
Mssqlsystemresource.mdfNão aplicável40,173,56814 De junho de 200711: 22Não aplicável
Odsole70.dll2005.90.3175.0179,56814 De junho de 200719: 56IA-64
Rdistcom.dll2005.90.3175.01,885,55214 De junho de 200719: 56IA-64
Replmerg.exe2005.90.3175.0957,29614 De junho de 200719: 56IA-64
Replrec.dll2005.90.3175.02,145,13614 De junho de 200719: 56IA-64
Sqlaccess.dll2005.90.3175.0352,11214 De junho de 200719: 56x 86
Sqlservr.exe2005.90.3175.072,530,80014 De junho de 200719: 56IA-64
Sqlwep.dll2005.90.3175.090,99214 De junho de 200715: 05x 86
Sqlwep.dll2005.90.3175.0221,04014 De junho de 200719: 56IA-64
Sqsrvres.dll2005.90.3175.0147,31214 De junho de 200719: 56IA-64
Sysdbupg.SQLNão aplicável510,62213 De junho de 200720: 46Não aplicável
Xpstar90.dll2005.90.3175.0957,29614 De junho de 200719: 56IA-64

Como Contornar

Para contornar esse problema, manualmente descartar a restrição de chave externa na tabela no assinante.

Situação

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

Mais Informações

Etapas para reproduzir o problema

  1. Crie duas tabelas usando um esquema que não é um esquema dbo.
  2. Criar uma restrição de chave externa em uma tabela para fazer referência a uma coluna em outra tabela.

    Observação Quando você cria a restrição de chave externa, a restrição de chave externa é criada usando um esquema que não é um esquema dbo.
  3. Publica ambas as tabelas.

    Observação Quando você publica as tabelas, certifique-se de que você executar as seguintes operações:
    • Especificar a restrição de chave primária e a restrição de chave externa devem ser copiados para os assinantes.
    • Especificar que a propriedade proprietário de objeto de destino dos artigos deve ser um proprietário diferente do usuário dbo.
  4. Inicialize uma inscrição.
  5. Descarte a restrição de chave externa no Editor.
  6. Execute o merge agent para sincronizar dados entre o Editor e o assinante.

Referências

Para obter mais informações sobre o esquema para nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
822499Novo esquema para nomeação para pacotes de atualização de software do Microsoft SQL Server
Para obter mais informações sobre terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Propriedades

ID do artigo: 938825 - Última revisão: terça-feira, 20 de novembro de 2007 - Revisão: 1.4
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
Palavras-chave: 
kbmt kbautohotfix kbhotfixserver kbexpertiseadvanced kbqfe kbfix KB938825 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 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: 938825

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