ID do artigo: 929440 - Última revisão: terça-feira, 19 de junho de 2007 - Revisão: 1.4

CORRECÇÃO: Mensagens de erro ao tentar atualizar linhas da tabela ou inserir tabela linhas em uma tabela no SQL Server 2000: "644" ou "2511"

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.
Bug #: 50000580 (Hotfix do SQL)

Nesta página

Expandir tudo | Recolher tudo

Sumário

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

Sintomas

Quando você tenta atualizar linhas da tabela ou inserir linhas da tabela em uma tabela no Microsoft SQL Server 2000, você receberá uma mensagem de erro semelhante a uma das seguintes no arquivo Errorlog do SQL Server 2000:
Mensagem de erro 1
Erro: 644, gravidade: 21, estado: 5
Não foi possível localizar a entrada de índice para RID ' Number ' na página de índice (IndexPage); índice identificação IndexID, banco de dados 'TestDB'.
Mensagem de erro 2
Servidor: Mensagem 2511, nível 16, estado 1, linha 1
Erro de tabela: ID do objeto Number, ID de índice IndexID. Chaves fora de ordem na página (IndexPage), slots 184 e 185.
anotações
  • Se você atualizar linhas da tabela, você pode enfrentar esse problema porque uma operação de atualização é uma operação de exclusão seguida por uma operação de inserção.
  • Quando esse problema ocorre, os dados SQL em linhas da tabela não serão perdidos. Em vez disso, as linhas da tabela são inseridas na tabela em uma ordem incorreta de acordo com a chave de índice.

Causa

Esse problema ocorre se as seguintes condições forem verdadeiras:
  • Quando o SQL Server insere as linhas da tabela, uma das páginas originais que contém a tabela é dividida em duas páginas para criar espaço suficiente para inserir as linhas da tabela.
  • Todas as linhas de tabela são classificadas de acordo com uma chave de índice.
  • O seguinte ocorre:
    • SQL Server tentar inserir as linhas da tabela na metade superior da página original que irá ser dividida.
    • Faz a operação de inserção com as linhas da tabela na parte inferior metade da página original para mover para a nova página.
    • A chave de índice que é usada para classificar as linhas da tabela faz com que a nova página com uma ordem de classificação que vem antes da página original.
    Observação Esse comportamento é conhecido como divisão da página esquerda.
  • Antes da página original é dividida em duas páginas, a página original contém registros fantasmas.
  • O segmento de limpeza do Registro fantasma remove os registros fantasmas da página original após a página original é dividida em duas páginas. Entretanto, o thread remove esses registros antes das linhas da tabela na parte inferior que metade da página original é movida para a nova página.

Resolução

O instalador não instala esse hotfix corretamente em sistemas com base em 64 x. Esse problema de instalação ocorre quando as seguintes condições forem verdadeiras:
  • O sistema usa a arquitetura de processador de tecnologia de memória estendida Intel64 (EM64T) ou a arquitetura de processador AMD64 AMD (Advanced Micro dispositivos).

    Observação Esse problema não ocorre em sistemas que usam a arquitetura do processador Intel Itanium.
  • O sistema está executando uma versão de 64-bit do sistema operacional Microsoft Windows Server.
  • O sistema está executando uma versão 32-bit do SQL Server 2000.
Podemos ter corrigido esse problema de instalação em compilações posteriores do SQL Server 2000, começando com a versão 8.00.2244. Quando um cliente que esteja executando o SQL Server 2000 em um sistema de 64 x solicita esse hotfix, forneceremos uma compilação que inclui esse hotfix e que pode ser instalado corretamente em um sistema de 64 x. A compilação que fornecemos será versão 8.00.2244 ou uma versão posterior.

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

Você deve ter o Microsoft SQL Server 2000 Service Pack 4 (SP4) instalado para aplicar esse hotfix.

Para obter mais informações sobre como obter o SQL Server 2000 Service Pack 4, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211  (http://support.microsoft.com/kb/290211/ ) Como obter o SQL Server 2000 service pack mais recente

Informações sobre reinicialização

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

Informações do registro

Não é necessário alterar o registro.

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

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo de hotfix

Esse hotfix contém apenas os arquivos que são necessárias para corrigir os problemas que este artigo lista. Este hotfix não pode conter de 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.
Hotfix do SQL Server 2000, 32 bits
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
80sp4 tools.sqlNão aplicável134,62819 De fevereiro de 200601: 40Não aplicável
Distmdl.ldfNão aplicável786,43206 De dezembro de 200601: 28Não aplicável
Distmdl.mdfNão aplicável2,359,29606 De dezembro de 200601: 28Não aplicável
Dtsui.dll2000.80.2234.01,593,34406 De dezembro de 200601: 51x 86
Impprov.dll2000.80.2234.0102,40006 De dezembro de 200601: 51x 86
Instdist.SQLNão aplicável751,63329 De novembro de 200615: 42Não aplicável
Msgprox.dll2000.80.2234.094,20806 De dezembro de 200601: 51x 86
Msrpjt40.dll4.10.9424.0188,47324 De janeiro de 200608: 13x 86
Mssdi98.dll8.11.50523.0239,10406-Jun-200522: 46x 86
Ntwdblib.dll2000.80.2234.0290,81606 De dezembro de 200601: 51x 86
Odsole70.dll2000.80.2234.069.63206 De dezembro de 200601: 51x 86
Osql.exe2000.80.2234.057.34405 De dezembro de 200623: 55x 86
Pfclnt80.dll2000.80.2234.0430,08006 De dezembro de 200601: 51x 86
Procsyst.SQLNão aplicável552,06817-Jun-200515: 00Não aplicável
Qrdrsvc.exe2000.80.2234.0192,51206 De dezembro de 200600: 00x 86
Replcom.SQLNão aplicável1,216,65905 De dezembro de 200623: 44Não aplicável
Replmerg.exe2000.80.2234.0163,84006 De dezembro de 200600: 02x 86
Replmerg.SQLNão aplicável1,151,52105 De dezembro de 200623: 44Não aplicável
Replprov.dll2000.80.2234.0237,56806 De dezembro de 200601: 51x 86
Replrec.dll2000.80.2234.0315,39206 De dezembro de 200601: 51x 86
Replsub.dll2000.80.2234.0270,33606 De dezembro de 200601: 51x 86
Replsys.SQLNão aplicável1,096,07501 De agosto de 200601: 21Não aplicável
Repltran.SQLNão aplicável1,000,69129 De novembro de 200615: 42Não aplicável
Rinitcom.dll2000.80.2234.0278,52806 De dezembro de 200601: 51x 86
Semexec.dll2000.80.2234.0856,06406 De dezembro de 200601: 51x 86
Snapshot.exe2000.80.2234.061.44006 De dezembro de 200600: 08x 86
Sp4_serv_qfe.SQLNão aplicável18,81017-Jun-200515: 00Não aplicável
Sqlagent.exe2000.80.2234.0323,58405 De dezembro de 200623: 46x 86
Sqldiag.exe2000.80.2234.0118,78406 De dezembro de 200600: 28x 86
Sqldmo.dll2000.80.2234.04,362,24006 De dezembro de 200601: 51x 86
Sqldumper.exeNão aplicável22,52806 De dezembro de 200600: 09x 86
SQLEVN70.rll2000.80.2234.045,05606 De dezembro de 200601: 51Não aplicável
Sqlfth75.dll2000.80.2234.0102,40005 De dezembro de 200623: 54x 86
Sqlservr.exe2000.80.2234.09,175,04006 De dezembro de 200601: 49x 86
Sqlsort.dll2000.80.2234.0589,82406 De dezembro de 200601: 51x 86
Stardds.dll2000.80.2234.0176,12806 De dezembro de 200601: 51x 86
Svrnetcn.dll2000.80.2234.0110,59206 De dezembro de 200601: 51x 86
Ums.dll2000.80.2234.035.32806 De dezembro de 200601: 51x 86
Xpstar.dll2000.80.2234.0311,29606 De dezembro de 200601: 51x 86
SQL Server 2000 hotfix, 64-bit
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
80sp4 tools.sqlNão aplicável134,62819 De fevereiro de 200601: 40Não aplicável
Distmdl.ldfNão aplicável786,43206 De dezembro de 200601: 28Não aplicável
Distmdl.mdfNão aplicável2,359,29606 De dezembro de 200601: 28Não aplicável
Dtsui.dll2000.80.2234.01,593,34406 De dezembro de 200601: 51x 86
Impprov.dll2000.80.2234.0102,40006 De dezembro de 200601: 51x 86
Instdist.SQLNão aplicável751,63329 De novembro de 200615: 42Não aplicável
Msgprox.dll2000.80.2234.094,20806 De dezembro de 200601: 51x 86
Msrpjt40.dll4.10.9424.0188,47324 De janeiro de 200608: 13x 86
Mssdi98.dll8.11.50523.0239,10406-Jun-200522: 46x 86
Ntwdblib.dll2000.80.2234.0290,81606 De dezembro de 200601: 51x 86
Odsole70.dll2000.80.2234.069.63206 De dezembro de 200601: 51x 86
Osql.exe2000.80.2234.057.34405 De dezembro de 200623: 55x 86
Pfclnt80.dll2000.80.2234.0430,08006 De dezembro de 200601: 51x 86
Procsyst.SQLNão aplicável552,06817-Jun-200515: 00Não aplicável
Qrdrsvc.exe2000.80.2234.0192,51206 De dezembro de 200600: 00x 86
Replcom.SQLNão aplicável1,216,65905 De dezembro de 200623: 44Não aplicável
Replmerg.exe2000.80.2234.0163,84006 De dezembro de 200600: 02x 86
Replmerg.SQLNão aplicável1,151,52105 De dezembro de 200623: 44Não aplicável
Replprov.dll2000.80.2234.0237,56806 De dezembro de 200601: 51x 86
Replrec.dll2000.80.2234.0315,39206 De dezembro de 200601: 51x 86
Replsub.dll2000.80.2234.0270,33606 De dezembro de 200601: 51x 86
Replsys.SQLNão aplicável1,096,07501 De agosto de 200601: 21Não aplicável
Repltran.SQLNão aplicável1,000,69129 De novembro de 200615: 42Não aplicável
Rinitcom.dll2000.80.2234.0278,52806 De dezembro de 200601: 51x 86
Semexec.dll2000.80.2234.0856,06406 De dezembro de 200601: 51x 86
Snapshot.exe2000.80.2234.061.44006 De dezembro de 200600: 08x 86
Sp4_serv_qfe.SQLNão aplicável18,81017-Jun-200515: 00Não aplicável
Sqlagent.exe2000.80.2234.0323,58405 De dezembro de 200623: 46x 86
Sqldiag.exe2000.80.2234.0118,78406 De dezembro de 200600: 28x 86
Sqldmo.dll2000.80.2234.04,362,24006 De dezembro de 200601: 51x 86
Sqldumper.exeNão aplicável22,52806 De dezembro de 200600: 09x 86
SQLEVN70.rll2000.80.2234.045,05606 De dezembro de 200601: 51Não aplicável
Sqlfth75.dll2000.80.2234.0102,40005 De dezembro de 200623: 54x 86
Sqlservr.exe2000.80.2234.09,175,04006 De dezembro de 200601: 49x 86
Sqlsort.dll2000.80.2234.0589,82406 De dezembro de 200601: 51x 86
Stardds.dll2000.80.2234.0176,12806 De dezembro de 200601: 51x 86
Svrnetcn.dll2000.80.2234.0110,59206 De dezembro de 200601: 51x 86
Ums.dll2000.80.2234.035.32806 De dezembro de 200601: 51x 86
Xpstar.dll2000.80.2234.0311,29606 De dezembro de 200601: 51x 86

Situação

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

Mais Informações

Para confirmar que você enfrentar esse problema, forneça as seguintes informações para serviços de atendimento ao cliente da Microsoft:
  • Determine o número de página ou números de página das mensagens de erro mencionadas na seção "Sintomas". Os números de página estão disponíveis nos arquivos Errorlog do SQL Server e no log de eventos do aplicativo do Windows.
  • Obtenha uma cópia de um arquivo de backup log de transações que cobre a vez durante o qual a página foi usada primeiro. Normalmente, esse arquivo de backup de log de transação é o próximo transação backup arquivo de log que foi criado após receber as mensagens de erro mencionadas na seção "Sintomas" primeiro.
Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684  (http://support.microsoft.com/kb/824684/ ) Descrição da terminologia padrão que é usada para descrever as atualizações de software

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
  • Microsoft SQL Server 2000 Standard Edition
Palavras-chave: 
kbmt kbautohotfix kbtshoot kbfix kbbug kbhotfixserver kbqfe kbpubtypekc KB929440 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: 929440  (http://support.microsoft.com/kb/929440/en-us/ )