CORRECÇÃO: erro "programador que produzam não" poderão ocorrer quando utilizar a função CONTAINSTABLE juntamente com muitos OR e predicados e do SQL Server 2008 ou no SQL Server 2008 R2

Traduções de Artigos Traduções de Artigos
Artigo: 2344600 - Ver produtos para os quais este artigo se aplica.
A Microsoft distribui correcções do Microsoft SQL Server 2008 como um ficheiro transferível. Uma vez que as correcções são cumulativas, cada nova edição contém todas as correcções e todas as correcções de segurança que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento.A Microsoft distribui o Microsoft SQL Server 2008 ou SQL Server 2008 R2 corrige como um ficheiro transferível. Uma vez que as correcções são cumulativas, cada nova edição contém todas as correcções e todas as correcções de segurança que foram incluídas com o SQL Server 2008 anterior ou o SQL Server 2008 R2 corrigir lançamento.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Considere o seguinte cenário:
  • Ter uma consulta de procura em texto completo que utiliza oCONTAINSTABLEfunção em conjunto com muitosOUeEpredicados na condição no Microsoft SQL Server 2008 ou no SQL Server 2008 R2. Por exemplo, ter o seguinte 50Eoperações:
    Declare @Keywords varchar(4000) = NULL
    
    set @Keywords= N'((((((((((((((((((((((((((((((((((((((((((((((((((((
    ("TOKarchitect" OR "architectural") 
    AND ("TOKengineer" OR "engineer")) 
    AND "gineer") AND ("TOKmechanical" OR "Mechanical")) 
    AND ("TOKengineer" OR "Engineering")) 
    AND ("TOKelectronic" OR "Electronics")) AND ("TOKengineer" OR "Engineer")) AND ("TOKelectronic" OR "Electronics")) AND ("TOKengineer" OR "Engineering")) AND ("TOKelectric" OR "Electrical")) AND ("TOKengineer" OR "Engineer")) AND ("TOKelectric" OR "Electrical")) AND ("TOKengineer" OR "Engineering")) AND ("TOKcontrol" OR "Control")) AND ("TOKsystem" OR "Systems")) AND ("TOKengineer" OR "Engineer")) AND ("TOKproject" OR "Project")) AND ("TOKmanager" OR "Manager")) AND ("TOKengineer" OR "Engineering")) AND "Scheme") AND ("TOKmanufacture" OR "Manufacturing")) AND ("TOKengineer" OR "Engineer")) AND ("TOKmetallurgist" OR "Metallurgy")) AND ("TOKmetallurgist" OR "Metallurgist")) AND ("TOKprocess" OR "Process")) AND ("TOKTechnology" OR "Technology")) AND ("TOKproduct" OR "Production")) AND ("TOKengineer" OR "Engineer")) AND ("TOKQuality" OR "Quality")) AND ("TOKengineer" OR "Engineer")) AND ("TOKQuality" OR "Quality")) AND ("TOKcontrol" OR "Control")) AND ("TOKengineer" OR "Engineer")) AND "Mechatronics") AND ("TOKcivil" OR "Civil")) AND ("TOKengineer" OR "Engineer")) AND ("TOKcivil" OR "Civil")) AND ("TOKengineer" OR "Engineering")) AND ("TOKdesign" OR "Design")) AND ("TOKengineer" OR "Engineering")) AND ("TOKdesign" OR "Design")) AND ("TOKengineer" OR "Engineer")) AND ("TOKgraduate" OR "Graduate")) AND ("TOKengineer" OR "Engineer")) AND ("TOKgraduate" OR "Graduate")) AND ("TOKengineer" OR "engineering")) AND ("TOKengineer" OR "Engineering")) AND ("TOKgraduate" OR "Graduate")) AND ") ANDNOT (") AND ("TOKRecruitment" OR "Recruitment")) AND ("TOKconsultant" OR "consultant")) AND ("TOKtrainee" OR "trainee")) AND ("TOKRecruitment" OR "recruitment"))'
    
    select * from CONTAINSTABLE(test_table, *, @keywords, 1000) 
  • Executar a consulta.
Neste cenário, poderá ocorrer um erro de "programador que produzam não". Além disso, é gerado um ficheiro de mini-dump na pasta de registo de SQL Server 2008 ou no SQL Server 2008 R2 Application e é registado o seguinte erro no ficheiro de registo de erro do SQL Server:
<time stamp=""></time>Servidor Utilizando 'dbghelp. dll' versão '4.0.5'
<time stamp=""></time>Servidor *** Não é possível obter o contexto do thread spid 0
<time stamp=""></time>Servidor *
*******************************************************************************
<time stamp=""></time>Servidor *
<time stamp=""></time>Servidor * Informação BEGIN pilha:
<time stamp=""></time>Servidor *<time></time>SPID<spid></spid>
<time stamp=""></time>Servidor *
<time stamp=""></time>Servidor * Programador de não dar
<time stamp=""></time>Servidor *
<time stamp=""></time>Servidor *
*******************************************************************************
<time stamp=""></time>Servidor de assinatura de pilha para a informação de estado é 0x000000000000030D
<time stamp=""></time>Servidor de processo externo dump devolver o código 0x20000001. Processo de informação externas devolvido sem erros.
<time stamp=""></time>Processo de servidor 0: 0: 0 (0xf94) trabalho 0x00000000817481A0 parece estar não-dar no programador de 0. Hora de criação do thread: 12925321224306. Thread aproximado da CPU utilizados: kernel 62 ms, utilizador 75187 MS. 98 de utilização do processo %. Sistema inactivo 0%. Intervalo: 76403 ms.
<time stamp=""></time>Processo de servidor 0: 0: 0 (0xf94) trabalho 0x00000000817481A0 parece estar não-dar no programador de 0. Hora de criação do thread: 12925321224306. Thread aproximado da CPU utilizados: kernel 125 ms, utilizador 145250 MS. 98 de utilização do processo %. Sistema inactivo 0%. Intervalo: 148417 ms.
<time stamp=""></time>Processo de servidor 0: 0: 0 (0xf94) trabalho 0x00000000817481A0 parece estar não-dar no programador de 0. Hora de criação do thread: 12925321224306. Thread aproximado da CPU utilizados: kernel 171 ms, utilizador 205515 MS. 98 de utilização do processo %. Sistema inactivo 0%. Intervalo: 209729 ms.
<time stamp=""></time>Processo de servidor 0: 0: 0 (0xf94) trabalho 0x00000000817481A0 parece estar não-dar no programador de 0. Hora de criação do thread: 12925321224306. Thread aproximado da CPU utilizados: kernel 218 ms, de utilizador 266343 MS. 98 de utilização do processo %. Sistema inactivo 0%. Intervalo: 271588 ms.
<time stamp=""></time>Processo de servidor 0: 0: 0 (0xf94) trabalho 0x00000000817481A0 parece estar não-dar no programador de 0. Hora de criação do thread: 12925321224306. Thread aproximado da CPU utilizados: kernel 234 ms, utilizador 325156 MS. 97 de utilização do processo %. Sistema inactivo 0%. Intervalo: 333671 ms.
<time stamp=""></time>Processo de servidor 0: 0: 0 (0xf94) trabalho 0x00000000817481A0 parece estar não-dar no programador de 0. Hora de criação do thread: 12925321224306. Thread aproximado da CPU utilizados: kernel 296 ms, utilizador 386000 MS. 97 de utilização do processo %. Sistema inactivo 0%. Intervalo: 396370 ms.

Causa

Este problema ocorre porque o SQL Server 2008 ou no SQL Server 2008 R2 não liberta um programador correctamente.

Resolução

Informações da atualização cumulativa

SQL Server 2008 R2

A correcção para este problema primeiro foi disponibilizada em 5 de actualização cumulativa. Para mais informações sobre como obter este pacote de actualização cumulativa para o SQL Server 2008 R2, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2438347Pacote de actualização cumulativa 5 do SQL Server 2008 R2
NotaUma 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 que foram incluídas com o SQL Server 2008 R2 anteriores corrigir lançamento. Recomendamos que considerem a aplicação a mais recente versão de correcção que contenha esta correcção. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
981356O SQL Server 2008 R2 cria disponibilizadas após o lançamento do SQL Server 2008 R2

SQL Server 2008 Service Pack 1

A correcção para este problema foi publicada pela primeira vez na actualização cumulativa 10 para o SQL Server 2008 Service Pack 1. Para mais informações sobre este pacote de actualização cumulativa, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2279604Pacote de actualização cumulativa 10 para o SQL Server 2008 Service Pack 1
NotaUma 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 que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento. A Microsoft recomenda que considerem a aplicação a mais recente versão de correcção que contenha esta correcção. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
970365O SQL Server 2008 cria disponibilizadas após o lançamento do SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008 correcções são criadas para service packs específicos do SQL Server. Tem de aplicar um hotfix do SQL Server 2008 Service Pack 1 para uma instalação do SQL Server 2008 Service Pack 1. Por predefinição, qualquer correcção fornecida num service pack do SQL Server está incluída no próximo service pack do SQL Server.

SQL Server 2008 Service Pack 2

A correcção para este problema disponibilizada pela primeira vez em 1 de actualizações cumulativo para o SQL Server 2008 Service Pack 2. Para mais informações sobre este pacote de actualização cumulativa, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2289254Actualização cumulativa 1 para o SQL Server 2008 Service Pack 2
NotaUma 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 que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento. Recomendamos que considerem a aplicação a mais recente versão de correcção que contenha esta correcção. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2402659O SQL Server 2008 cria disponibilizadas após o lançamento do SQL Server 2008 Service Pack 2

Como contornar

Para contornar este problema, utilize um dicionário de sinónimos de procura em texto completo para definir sinónimos do predicado.

Para o fazer, utilize aFORMSOFfunciona em conjunto com oDICIONÁRIO DE SINÓNIMOSvalor e, em seguida, adicionar todas as palavras-chave como parâmetros.

Para o exemplo descrito na secção "Sintomas", segue-se uma versão actualizada da consulta de exemplo:
Select * from test_table where Contains(*,'FORMSOF (THESAURUS,"architectural","engineer","Mechanical","Engineering","Electronics","Engineer","Electrical","Control","Systems","Project","Manager","Manufacturing","Metallurgy","Metallurgist","Process",?Design?,"Technology","Production","Quality","Control","Civil","Graduate","Recruitment","consultant","trainee","recruitment")')

Ponto Da Situação

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

Referências

Para mais informações sobre oCONTAINSTABLEfuncionar, visite o seguinte Web site da MSDN (Microsoft Developer Network):
Informações gerais sobre a função CONTAINSTABLE
Para mais informações sobre o modelo de assistência incremental para o SQL Server, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
935897Um modelo de assistência incremental está disponível a partir da equipa do SQL Server para proporcionar correcções para problemas comunicados
Para mais informações sobre o esquema de atribuição de nomes para as actualizações do SQL Server, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
822499Nova esquema de atribuição de nomes para pacotes de actualização de software do Microsoft SQL Server
Para mais informações sobre a terminologia de actualizações de software, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
824684Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

Propriedades

Artigo: 2344600 - Última revisão: 20 de dezembro de 2010 - Revisão: 4.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Service Pack 1
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Standard Edition for Small Business
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Standard Edition for Small Business
  • Microsoft SQL Server 2008 R2 Workgroup
Palavras-chave: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2344600 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: 2344600

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