CORRECÇÃO: Recebe erro 605 e erro 824 quando você executa uma consulta que insere dados uma tabela temporária no SQL Server 2008

Traduções deste artigo Traduções deste artigo
ID do artigo: 960770 - Exibir os produtos aos quais esse artigo se aplica.
Bug: # 50003826 (Hotfix do SQL)
A Microsoft distribui correções do Microsoft SQL Server 2008 como um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todas as correções segurança que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento.
Expandir tudo | Recolher tudo

Sintomas

No Microsoft SQL Server 2008, você executa uma consulta que insere dados em uma tabela temporária. A instrução insert contém uma subconsulta que faz referência à mesma tabela temporária. Quando você executa a consulta, você receberá uma mensagem de erro semelhante à seguinte:
Msg 605, nível 21, estado 3, linha 1
Tentativa de busca lógica página (1:225) banco de dados 2 falhou. Ele pertence a 281474980315136 de unidade de alocação não para 504403158513025024.

Se você executar a consulta novamente, você receber outra mensagem de erro semelhante à seguinte:

Msg 824, nível 24, estado 2, linha 1
SQL Server detectou um erro de E/s com base em consistência lógico: soma de verificação incorreta (esperada: 0x50758180; real: 0x15658bfc). Ele ocorreu durante uma leitura de página (1:336) no banco de dados ID 2 no deslocamento 0x000000002a0000 no arquivo 'C:\Arquivos de Programas\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\DATA\tempdb.mdf'. Mensagens adicionais no SQL Server erro log ou sistema de log de eventos podem fornecer mais detalhes. Isso é uma condição de erro grave que ameaça integridade do banco de dados e deve ser corrigida imediatamente. Conclua uma verificação de consistência completo do banco de dados (DBCC CHECKDB). Este erro pode ser causado por vários fatores; para obter mais informações, consulte os manuais online do SQL Server.
Em alguns casos, também poderá receber uma mensagem de erro semelhante à seguinte:
Msg 601, nível 12, estado 3, Procecure Name do procedimento, da linha Line Number
Não pôde continuar a verificação com NOLOCK devido à movimentação de dados.

Resolução

A correção para esse problema foi lançada primeiro em 3 atualização cumulativa. Para obter mais informações sobre como obter esse pacote de atualizações cumulativas para o SQL Server 2008, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
960484Pacote de atualizações cumulativas 3 para SQL Server 2008
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções segurança que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento. Recomendamos que você considere a aplicação a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
956909O SQL Server 2008 compilações que lançadas foram após o lançamento SQL Server 2008 foi lançado
Depois de instalar este pacote de atualizações cumulativas, você deve ativar o sinalizador de rastreamento 4135. Para fazer isso, você pode adicionar o -T4135 parâmetro de inicialização, ou você pode usar a instrução dbcc traceon(4135) para uma sessão individual.

Como Contornar

Para contornar esse problema, adicione uma coluna que tem uma chave primária agrupada e uma propriedade de identidade para a tabela temporária. Por exemplo, executar a instrução a seguir para alterar a tabela temporária:
ALTER TABLE #TempTable
ADD id integer IDENTITY(1,1) CONSTRAINT id PRIMARY KEY CLUSTERED

Situação

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

Mais Informações

Para mais informações sobre quais arquivos são alterados e para obter informações sobre quaisquer pré-requisitos para aplicar o pacote de atualização cumulativa que contém o hotfix descrito neste artigo, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
960484Pacote de atualizações cumulativas 3 para SQL Server 2008

Referências

Para obter mais informações sobre a lista de compilações disponibilizadas após o lançamento do SQL Server 2008, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
956909O SQL Server 2008 compilações que lançadas foram após o lançamento SQL Server 2008 foi lançado
Para obter mais informações sobre o modelo incremental de serviços para o SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
935897Há um modelo incremental de serviços da equipe do SQL Server para fornecer hotfixes para problemas relatados
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: 960770 - Última revisão: sexta-feira, 23 de janeiro de 2009 - Revisão: 2.1
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
  • Microsoft SQL Server 2008 Web
Palavras-chave: 
kbmt kbexpertiseadvanced kbfix kbsurveynew kbqfe KB960770 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: 960770

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