CORRECÇÃO: SQL Server 2005 trata uma coluna de identidade em um modo de exibição como uma coluna int comum quando o nível de compatibilidade do banco de dados é definido como 80

Traduções deste artigo Traduções deste artigo
ID do artigo: 920974 - Exibir os produtos aos quais esse artigo se aplica.
Bug: # 910 (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

Sumário

Este artigo descreve o seguinte sobre esta versão de hotfix:
  • Problemas corrigidos por esse pacote de hotfix
  • Os pré-requisitos para aplicar o pacote de hotfix
  • Informações sobre se é necessário reiniciar o computador após aplicar 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 depois de aplicar o pacote de hotfix
  • Arquivos que estão contidos no pacote de hotfix

Sintomas

Considere o seguinte cenário. Você tem um banco de dados no SQL Server 2005. Você define o nível de compatibilidade do banco de dados a 80. Você tem um modo de exibição existente ou criar um modo de exibição no banco de dados. O modo de exibição atende aos seguintes requisitos:
  • O modo de exibição é criado em duas tabelas no banco de dados.
  • A exibição inclui uma coluna de identidade de uma das tabelas.
Nesse cenário, SQL Server 2005 trata somente a coluna de identidade no modo de exibição como uma coluna comum int . No entanto, se você tiver o mesmo modo de exibição no Microsoft SQL Server 2000, o SQL Server 2000 trata a coluna como a coluna de identidade .

Para verificar esse problema no SQL Server 2005, você pode consultar a coluna is_identity na exibição de catálogo de sys.columns contra a coluna de identidade no modo de exibição. Observe que o SQL Server 2005 retorna o valor 0 para a coluna de identidade no modo de exibição.

O nível de compatibilidade do banco de dados no SQL Server 2005 também pode ser definido como 80 nos seguintes casos:
  • Você atualizar um banco de dados existente do SQL Server 2000 para o SQL Server 2005. O banco de dados do SQL Server 2000 terá o nível de compatibilidade de 80 no SQL Server 2005.
  • Você desanexar um banco de dados do SQL Server 2000 e, em seguida, anexar o banco de dados para o SQL Server 2005. O banco de dados terá o nível de compatibilidade de 80 no SQL Server 2005.

Causa

Esse problema ocorre porque o SQL Server 2005 trata a coluna de identidade do modo de exibição como uma coluna int . Esse problema ocorre mesmo depois de definir o nível de compatibilidade do banco de dados para 80 (SQL Server 2000).

Resolução

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 Microsoft SQL Server 2005 Service Pack 1 (SP1) instalado para aplicar esse hotfix.

Para obter mais informações sobre como obter o SQL Server 2005 Service Pack 1, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
913089Como obter o service pack mais recente para o SQL Server 2005

Informações sobre reinicialização

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

Informações do registro

Você não ter alterar o registro.

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.
SQL Server 2005, 32 bits x 86 versões
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Logread.exe2005.90.2167.0398,11220 De junho de 200615: 35x 86
Microsoft.SQLServer.SqlEnum.dll9.0.2167.0908,06420 De junho de 200615: 37x 86
Ms.ss.mgdsqldumper.dll2005.90.2167.075,55220 De junho de 200615: 29x 86
Msgprox.dll2005.90.2167.0197,92020 De junho de 200615: 32x 86
Replprov.dll2005.90.2167.0547,61620 De junho de 200615: 35x 86
Replrec.dll2005.90.2167.0782,11220 De junho de 200615: 36x 86
Sbmsmdlocal.dll9.0.2167.015,662,36820 De junho de 200615: 32x 86
Sqlaccess.dll2005.90.2167.0347,93620 De junho de 200615: 34x 86
Sqlservr.exe2005.90.2167.028,950,36020 De junho de 200615: 32x 86
SQL Server 2005, versão de 64 bits
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Logread.exe2005.90.2167.0522,52820 De junho de 200615: 29x 64
Microsoft.SQLServer.SqlEnum.dll9.0.2167.0875,29620 De junho de 200615: 31x 86
Ms.ss.mgdsqldumper.dll2005.90.2167.091,42420 De junho de 200615: 30x 64
Msgprox.dll2005.90.2167.0259,36020 De junho de 200615: 28x 64
Replprov.dll2005.90.2167.0745,24820 De junho de 200615: 30x 64
Replrec.dll2005.90.2167.01,008,41620 De junho de 200615: 31x 64
Sbmsmdlocal.dll9.0.2167.015,662,36820 De junho de 200615: 32x 86
Sqlaccess.dll2005.90.2167.0355,10420 De junho de 200615: 29x 86
Sqlservr.exe2005.90.2167.039,262,49620 De junho de 200615: 32x 64
SQL Server 2005, versão de arquitetura Itanium
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Logread.exe2005.90.2167.01,094,94420 De junho de 200606: 39IA-64
Microsoft.SQLServer.SqlEnum.dll9.0.2167.0875,29620 De junho de 200606: 39x 86
Ms.ss.mgdsqldumper.dll2005.90.2167.0163,10420 De junho de 200606: 41IA-64
Msgprox.dll2005.90.2167.0542,49620 De junho de 200606: 38IA-64
Replprov.dll2005.90.2167.01,617,18420 De junho de 200606: 39IA-64
Replrec.dll2005.90.2167.02,141,47220 De junho de 200606: 39IA-64
Sbmsmdlocal.dll9.0.2167.048,738,59220 De junho de 200606: 39IA-64
Sqlaccess.dll2005.90.2167.0349,47220 De junho de 200606: 38x 86
Sqlservr.exe2005.90.2167.072,183,07220 De junho de 200606: 39IA-64

Situação

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

Mais Informações

Para alterar o comportamento no SQL Server 2005 depois de aplicar esse hotfix, você deve executar uma das seguintes ações:
  • Se o modo de exibição no banco de dados não é criado usando a opção WITH SCHEMABINDING , execute o procedimento sp_refreshview armazenado no modo de exibição.
  • Se o modo de exibição no banco de dados é criado usando a opção WITH SCHEMABINDING , você deve cancelar o modo de exibição pela primeira vez. Em seguida, recrie o modo de exibição.
Depois que você fizer isso, SQL Server 2005 trata a coluna de identidade no modo de exibição o mesmo como SQL Server 2000 para todas as exibições existentes.

Para todas as exibições recém-criadas depois de aplicar o hotfix, SQL Server 2005 trata a coluna de identidade no modo de exibição o mesmo como SQL Server 2000. Além disso, se você anexar um banco de dados baseado em SQL Server 2000, os modos de exibição no banco de dados anexado são também tratadas da mesma forma SQL Server 2000.

Para obter mais informações sobre o procedimento sp_refreshview armazenados, visite o seguinte site da Web Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/ms187821.aspx
Para obter mais informações, 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: 920974 - Última revisão: terça-feira, 20 de novembro de 2007 - Revisão: 1.7
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition
Palavras-chave: 
kbmt kbautohotfix kbtshoot kbsql2005engine kbhotfixserver kbqfe kbpubtypekc KB920974 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: 920974

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