CORRECÇÃO: Uma subconsulta Correlated em vistas com partições com operações de texto pode causar a violação de acesso

Traduções de Artigos Traduções de Artigos
Artigo: 291274 - Ver produtos para os quais este artigo se aplica.
N.º DE BUGS: 352264 (SHILOH_BUGS)
Expandir tudo | Reduzir tudo

Sintomas

Poderá ocorrer uma violação de acesso (AV) quando seleccionar partições vistas nas seguintes condições:
  • Vistas de conter pelo menos uma coluna de texto ou ntext.
  • Uma função de texto é utilizada para avaliar uma coluna de texto numa selecção principal.
  • Texto de linha é activado para pelo menos uma das tabelas com uma coluna de texto e desactivada para, pelo menos, um outro.
Errorlog do SQL Server pode conter entradas semelhantes à seguinte:
CEs::Eval(unsigned long * 0x1af60248, CEsExec * 0x0047004c, CXVariant * 0x115af134) line 778 + 17 bytes
CParamInfo::FUpdate(unsigned long * 0x1af60248) line 130 + 20 bytes
CQScanNLJoin::PpbAddChangedParams(CParamBounds * 0x115af1f4, unsigned long * 0x1af60248, int 0, int * 0x115af180) line 933 + 30 bytes
CQScanNLJoin::RecomputeInner(CParamBounds * 0x115af1f4, unsigned long * 0x1af60248) line 995
CQScanNLJoin::GetRow(unsigned long * 0x1af60248, unsigned long * 0x1af60248) line 1269
CQueryScan::GetRow(unsigned long * 0x1af60248, unsigned long * 0x1af60248) line 4273 + 27 bytes
CStmtQuery::ErsqExecuteQuery(CMsqlExecContext * 0x1af60060 {CMsqlExecContext}, const CEsComp * 0x1b031e68, const CEsComp * 0x00000000, unsigned long * 0x1af60248, int 1, int 0) line 946 + 21 bytes
CStmtSelect::XretExecute(CMsqlExecContext * 0x1af60060 {CMsqlExecContext}) line 3458 + 37 bytes
CMsqlExecContext::ExecuteStmts(ExecutionContext * 0x1aa8d518) line 1483 + 16 bytes
CMsqlExecContext::Execute(CCompPlan * 0x00000000 {CCompPlan}, CParamExchange * 0x00000000) line 1202 + 12 bytes
CSQLSource::Execute(CParamExchange * 0x00000000) line 1246 + 19 bytes
language_exec(srv_proc * 0x1aa90090) line 682
process_commands(srv_proc * 0x1aa90090) line 1704 + 9 bytes
ProcessWorkRequests(UmsWorkQueue * 0x02574b58) line 431 + 13 bytes
ThreadStartRoutine(void * 0x105c1f90) line 263 + 7 bytes
MSVCRT! 7800bea1()
KERNEL32! 77e92ca8()
				

Resolução

Para resolver este problema, obtenha o service pack mais recente do SQL Server 2000. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
290211INF: How to Obtain the Latest SQL Server 2000 Service Pack

Ponto Da Situação

A Microsoft confirmou que este é um problema no SQL Server 2000. Este problema foi corrigido pela primeira vez no SQL Server 2000 Service Pack 1.

Mais Informação

Segue-se um exemplo de uma consulta que pode resultar num erro acima:
SELECT 1
FROM v1
WHERE IntColumn <= ALL
      (
        SELECT v2.IntColumn
         FROM v2
         WHERE SUBSTRING(v1.TextColumn,1,5) < 'a'
      )
				
onde v1 está definido como:
Select * from db1.dbo.t1
UNION ALL
Select * from db2.dbo.t1
				
v2 é definido como:
Select * from db1.dbo.t2
UNION ALL
Select * from db2.dbo.t2
				
t1 contém 1 coluna int e 1 texto coluna e t2 contém apenas uma coluna int.

Propriedades

Artigo: 291274 - Última revisão: 5 de novembro de 2003 - Revisão: 3.2
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Standard Edition
Palavras-chave: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB291274 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: 291274

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