CORREÇÃO: Erros quando você executar uma consulta que usa a cláusula FOR XML no modo de caminho no SQL Server 2008 R2

Traduções de Artigos Traduções de Artigos
Artigo: 2715312 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

A Microsoft distribui correções de Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) em um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todas as atualizações de segurança que foram incluídas com a anterior versão de atualização do SQL Server 2008 R2 Service Pack 1 (SP1).

Sintomas

Considere o seguinte cenário:
  • Você tem um aplicativo cliente que executa uma consulta no Microsoft SQL Server 2008 R2.
  • A consulta utiliza a cláusula FOR XML no modo de caminho .
  • A consulta executa o comando SET NO_BROWSETABLE ON para ativar a configuração NO_BROWSETABLE .
Nesse cenário, a consulta não é executada. Além disso, você recebe a seguinte mensagem de erro no aplicativo cliente e um arquivo de minidespejo é gerado no log de erro do SQL.

MSG 0, nível 11, estado 0, linha 0
Ocorreu um erro grave no comando atual. Os resultados, se houver, devem ser descartados.
MSG 0, nível 20, estado 0, linha 0
Ocorreu um erro grave no comando atual. Os resultados, se houver, devem ser descartados.

Observações
  • Um plano de consulta é usado para executar a consulta não é compilado.
  • Não existem eventos profiler para a consulta falhou ao iniciar o perfil SQL Server.
  • Quando esse problema ocorre, o serviço SQL Server desliga intermitentemente.
  • O problema ocorrer em Microsoft SQL Server 2012.

Causa

Esse problema ocorre devido uma falha interna de algebrizer de SQL Server. Esse problema ocorre quando o SQL Server tenta adicionar colunas são extraídas de um lado de um nó de operador de associação para o outro lado do nó do operador join. Portanto, uma árvore de algebrizer inválido é criada porque as colunas definidas em um lado do nó do operador de associação não são visíveis no lado do nó de operador join.

Resolução

Informações da atualização cumulativa

Pacote de atualizações cumulativas 7 para SQL Server 2008 R2 SP1

A correção para esse problema foi lançada primeiro na atualização cumulativa 7 para SQL Server 2008 R2 Service Pack 1. Para obter mais informações sobre esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2703282 Pacote de atualização cumulativa 6 para SQL Server 2008 R2 SP1
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 de segurança que foram incluídas com o anterior SQL Server 2008 R2 corrigir lançamento. A Microsoft recomenda que você considere a aplicação a versão mais recente de correção 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:
2567616 SQL Server 2008 R2 compilações lançadas após o lançamento do SQL Server 2008 R2 SP1
Microsoft SQL Server 2008 R2 hotfixes são criados para service packs específicos do SQL Server. Você deve aplicar um hotfix de SQL Server 2008 R2 Service Pack 1 para uma instalação do SQL Server 2008 R2 Service Pack 1. Por padrão, nenhum hotfix é fornecido em um service pack SQL Server está incluído no próximo service pack de SQL Server.

Ponto Da Situação

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

Como contornar

Para contornar esse problema, use um dos seguintes métodos.

Método 1

Não use a cláusula FOR XML no modo de caminho .

Método 2

Execute o seguinte comando para desabilitar a opção NO_BROWSETABLE :

SET NO_BROWSETABLE LOGOFF

Referências

Para obter mais informações sobre o modo de procura, vá para o seguinte site da MSDN:
Informações gerais sobre o modo de procura
Para obter mais informações sobre como usar o modo de caminho com a cláusula FOR XML, visite o seguinte site da MSDN:
Como usar o modo de caminho com a cláusula FOR XML

Propriedades

Artigo: 2715312 - Última revisão: 18 de junho de 2012 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
Palavras-chave: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2715312 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: 2715312

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