Entrar

CORRECÇÃO: Plano de execução com qualidade inferior em um UPDATE indireto para um modo de exibição indexado

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.

286234
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
BUG #: 236137 (SHILOH_BUGS)
Sintomas
Uma atualização para uma tabela base de um modo de exibição indexado pode resultar em um plano com qualidade inferior quando o modo de exibição indexado contém funções agregadas.
Causa
Linha incorreta estimativas resultam em uma verificação de índice em vez de um índice de pesquisa ao calcular as informações agregadas.
Resolução
Para resolver esse problema, obtenha o service pack mais recente para o SQL Server 2000. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211INF: Como obter o Service Pack mais recente do SQL Server 2000
Como Contornar
Evite utilizar funções agregadas em um modo de exibição indexado.
Situação
A Microsoft confirmou que este é um problema no SQL Server 2000. Esse problema foi corrigido primeiro no SQL Server 2000 Service Pack 1.
Mais Informações
Execute o seguinte código para ver o problema. Observe que a etapa "computadores escalar" está executando uma pesquisa de índice.
use tempdbgoIF EXISTS(SELECT * FROM information_schema.views where table_name = 'v1')  drop view v1IF EXISTS(SELECT * FROM information_schema.tables where table_name = 't1')  drop table t1gocreate table t1 (a int, b bigint NOT NULL)set nocount ondeclare @i intset @i=1while (@i<100000)begin  insert into t1 values (@i,0)  set @i=@i+1endgoSET NUMERIC_ROUNDABORT OFF SET ANSI_PADDING,ANSI_WARNINGS,CONCAT_NULL_YIELDS_NULL,ARITHABORT,QUOTED_IDENTIFIER,ANSI_NULLS ONGOcreate view v1 (a,b,c) with schemabinding as select a, sum(b), count_big(*) from dbo.t1 group by a gocreate unique clustered index i1 on v1(a)goset statistics profile oninsert into t1 values (1,1)set statistics profile offgo				
IV desempenho lento rápido velocidade otimização otimizador plano

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 286234 - Última Revisão: 01/16/2015 21:28:13 - Revisão: 3.2

  • Microsoft SQL Server 2000 Standard Edition
  • kbnosurvey kbarchive kbmt kbbug kbfix kbsqlserv2000sp1fix KB286234 KbMtpt
Comentários