REVISIÓN: Plan de ejecución óptimo en UPDATE indirecta a una vista indizada

Seleccione idioma Seleccione idioma
Id. de artículo: 286234 - Ver los productos a los que se aplica este artículo
Nº DE ERROR: 236137 (SHILOH_BUGS)
Expandir todo | Contraer todo

Síntomas

Una actualización de una tabla subyacente de una vista indizada puede producir un plan óptimo cuando la vista indizada contiene las funciones de agregado.

Causa

Fila incorrecto estimaciones resultado en un recorrido de índice en lugar de un índice de búsqueda al calcular la información agregada.

Solución

Para resolver este problema, consiga el Service Pack más reciente para SQL Server 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290211INF: Cómo obtener el Service Pack más reciente de SQL Server 2000

Solución

Evite utilizar funciones de agregado en una vista indizada.

Estado

Microsoft ha confirmado que este es un problema de SQL Server 2000. Este problema se corrigió por primera vez en SQL Server 2000 Service Pack 1.

Más información

Ejecute el siguiente código para ver el problema. Tenga en cuenta que el paso "cálculo escalar" está realizando una búsqueda de índice.
use tempdb
go
IF EXISTS(SELECT * FROM information_schema.views where table_name = 'v1')
  drop view v1
IF EXISTS(SELECT * FROM information_schema.tables where table_name = 't1')
  drop table t1
go

create table t1 (a int, b bigint NOT NULL)

set nocount on
declare @i int
set @i=1
while (@i<100000)
begin
  insert into t1 values (@i,0)
  set @i=@i+1
end
go

SET NUMERIC_ROUNDABORT OFF 
SET ANSI_PADDING,ANSI_WARNINGS,CONCAT_NULL_YIELDS_NULL,ARITHABORT,QUOTED_IDENTIFIER,ANSI_NULLS ON
GO
create view v1 (a,b,c) with schemabinding as select a, sum(b), count_big(*) from dbo.t1 group by a 
go
create unique clustered index i1 on v1(a)
go

set statistics profile on
insert into t1 values (1,1)
set statistics profile off
go
				

Propiedades

Id. de artículo: 286234 - Última revisión: jueves, 16 de octubre de 2003 - Versión: 3.2
La información de este artículo se refiere a:
  • Microsoft SQL Server 2000 Standard Edition
Palabras clave: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB286234 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 286234

Enviar comentarios

 

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