CORRECÇÃO: Quando efectua uma consulta através de uma vista que utiliza a cláusula ORDER BY no SQL Server 2008, o resultado é ainda devolvido por ordem aleatória

Traduções de Artigos Traduções de Artigos
Artigo: 926292 - Ver produtos para os quais este artigo se aplica.

SQL Server 2008

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.

SQL Server 2005

A Microsoft distribui correcções Microsoft SQL Server 2005 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 2005 anterior corrigir lançamento.
Para obter mais informações sobre a lista principal de compilações disponibilizadas após o lançamento do SQL, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
957826Onde pode encontrar mais informações sobre o SQL Server 2008 cria disponibilizadas depois do SQL Server 2008 e o SQL Server 2005 cria disponibilizadas depois do SQL Server 2005 Service Pack 2
Expandir tudo | Reduzir tudo

Nesta página

Este artigo descreve o seguinte sobre esta versão de correcção:
  • Problemas corrigidos pelo pacote de correcção
  • Os pré-requisitos para aplicar o pacote de correcções
  • Se tem de reiniciar o computador depois de aplicar o pacote de correcções
  • Se o pacote de correcções é substituído por qualquer outro pacote de correcção
  • Se terá de efectuar quaisquer alterações de registo depois de aplicar o pacote de correcções
  • Ficheiros contidos no pacote de correcção

Sintomas

Tem uma vista de uma base de dados no SQL Server 2005 ou SQL Server 2008. Na definição da vista, a instrução SELECT cumpre os requisitos seguintes:
  • A instrução SELECT utiliza a expressão (100) PERCENT TOP.
  • A instrução SELECT utiliza a cláusula ORDER BY.
Quando efectua uma consulta através da vista, o resultado é devolvido por ordem aleatória.

No entanto, este comportamento é diferente no Microsoft SQL Server 2000. No SQL Server 2000, o resultado é devolvido pela ordem em que especificados na cláusula ORDER BY.

SQL Server 2008

A correcção deste problema primeiro foi disponibilizada em 1 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:
956717Pacote de actualização cumulativa 1 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

SQL Server 2005

Existem duas versões desta correcção. Uma versão foi concebida para ser aplicado a versão original do SQL Server 2005. A versão foi concebida para ser aplicada a SQL Server 2005 Service Pack 2 (SP2). Se estiver a executar a versão do SQL Server 2005, aplique a correcção descrita neste artigo (compilação 1554). Se estiver a executar o SQL Server 2005 SP2, aplicar pacote de actualização cumulativa 2 para o SQL Server 2005 SP2 (compilação 3175). Se estiver a executar o SQL Server 2005 Service Pack 1 (SP1), instalar o SQL Server 2005 SP2 e, em seguida, aplicar o pacote de actualização cumulativa 2 para SQL Server 2005 SP2 (compilação 3175). Pacote de actualização cumulativa 2 para o SQL Server 2005 SP2 (compilação 3175) é descrita no artigo da base de dados de conhecimento da Microsoft 936305. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
936305O pacote de actualização cumulativa 2 para o SQL Server 2005 Service Pack 2 está disponível

Informações sobre a correcção

Está disponível a partir da Microsoft uma correcção suportada. No entanto, esta correcção destina-se a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico.

Se a correcção está disponível para transferência, existe uma secção "denominada transferência de correcção disponível" na parte superior deste artigo da base de dados de conhecimento. Se esta secção não for apresentada, submeta um pedido para o serviço de cliente do Microsoft e suporte para obter a correcção.

Nota Se ocorram problemas adicionais ou se for necessária qualquer resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos normais do suporte serão aplicados a problemas adicionais e questões de suporte que não se enquadrem esta correcção específica. Para obter uma lista completa dos números de telefone do suporte de cliente do Microsoft ou para criar um pedido serviço separado, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=support
Nota O formulário "Transferência de correcção disponível" apresenta os idiomas para a qual a correcção está disponível. Se não vir o idioma, é porque uma correcção não está disponível para esse idioma.

Pré-requisitos

Tem de ter instalado a versão do SQL Server 2005 para aplicar esta correcção.

Informações sobre reinício

Tem de reiniciar o serviço SQL Server depois de aplicar esta correcção.

Informações de registo

Não é necessário alterar o registo depois de aplicar esta correcção.

Depois de aplicar esta correcção de acções

Esta correcção introduz o sinalizador de rastreamento 168. Depois de aplicar esta correcção, tem de activar o sinalizador de rastreamento 168. Para obter informações sobre como activar um sinalizador de rastreio no SQL Server 2005, consulte a secção "Comentário" do seguinte Web site da MSDN (Microsoft Developer Network):
http://msdn2.microsoft.com/en-us/library/ms188396.aspx
Além disso, tem de alterar o nível de compatibilidade da base de dados que contém a vista para 80.

Para alterar o nível de compatibilidade, siga estes passos:
  1. Abra o SQL Server Management Studio e, em seguida, ligue a instância do SQL Server 2005.
  2. Clique com o botão direito a base de dados que contém a vista e, em seguida, clique em Propriedades .
  3. No painel Seleccionar uma página , clique em Opções .
  4. Na lista nível de compatibilidade , seleccione SQL Server 2000 (80) .
Nota Sinalizador de rastreamento 168 tem de ser definida antes da base de dados é migrado para o SQL Server 2005. Se o sinalizador de rastreamento 168 é definido depois da base de dados for migrado, o resultado da consulta permanecerá não ordenado.

Informações sobre ficheiros da correcção

Esta correcção contém apenas os ficheiros necessários para corrigir os problemas referidos neste artigo. Esta correcção poderá não conter todos os ficheiros que necessita para actualizar completamente um produto para a compilação mais recente.

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas na hora universal coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário no item data e hora no painel de controlo.
Reduzir esta tabelaExpandir esta tabela
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempoPlataforma
Logread.exe2005.90.1554.0397,08804-Outubro de 200616: 06x 86
Microsoft.SQLServer.Replication.dll2005.90.1554.01,608,48004-Outubro de 200616: 06x 86
Microsoft.SQLServer.SMO.dll9.0.1554.01,559,32804-Outubro de 200616: 06x 86
Microsoft.SQLServer.sqlenum.dll9.0.1554.0895,77604-Outubro de 200616: 06x 86
Msmdlocal.dll9.0.1554.015,626,52804-Outubro de 200616: 08x 86
Msmdredir.dll9.0.1554.03,929,88804-Outubro de 200616: 08x 86
OSQL.exe2005.90.1554.051,48804-Outubro de 200616: 04x 86
Replrec.dll2005.90.1554.0781,08804-Outubro de 200616: 06x 86
Sqlaccess.dll2005.90.1554.0349,47204-Outubro de 200616: 06x 86
Sqldiag.exe2005.90.1554.0960,28804-Outubro de 200616: 06x 86
Sqlservr.exe2005.90.1554.028,791,64004-Outubro de 200616: 08x 86

Ponto Da Situação

Este comportamento ocorre por predefinição.Este comportamento no SQL Server 2005 permanecerá em futuras versões do SQL Server.

SQL Server 2008

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:
956717Pacote de actualização cumulativa 1 para o SQL Server 2008

SQL Server 2005

Se aplicar esta correcção para o SQL Server 2005 antes de migrar uma aplicação do SQL Server 2000 para o SQL Server 2005, esta correcção fará com que a aplicação funciona com o SQL Server 2005. Por exemplo, pretende obter os dados numa ordem específica ordenado. Para efectuar este procedimento, tem de utilizar a cláusula ORDER BY na instrução SELECT que utiliza para consulta através da vista. Depois de aplicar esta correcção e migrar a aplicação, irá obter um resultado da consulta ordenada.

No entanto, esta correcção é apenas uma solução temporária. Depois de migrar a aplicação, terá de actualizar a aplicação funcione correctamente com o novo comportamento no SQL Server 2005.

Depois de actualizar a aplicação, pode desactivar o sinalizador de rastreamento 168 e alterar o nível de compatibilidade da base de dados até 90.

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
Para obter mais informações sobre o nível de compatibilidade de uma base de dados do SQL Server 2005, visite o seguinte site da Web MSDN:
http://msdn2.microsoft.com/en-us/library/ms178653.aspx
Para mais informações sobre como configurar opções de arranque do servidor no SQL Server 2005, visite o seguinte site da Web MSDN:
http://msdn2.microsoft.com/en-us/library/ms345416.aspx
Para mais informações sobre como utilizar as opções de arranque do serviço SQL Server, visite o seguinte site da Web MSDN:
http://msdn2.microsoft.com/en-us/library/ms190737.aspx

Propriedades

Artigo: 926292 - Última revisão: 19 de setembro de 2008 - Revisão: 5.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Workgroup
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Express Edition
Palavras-chave: 
kbmt kbautohotfix kbhotfixserver kbfix kbexpertiseadvanced kbqfe kbpubtypekc KB926292 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: 926292

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