Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Mejor desempeño de cursores

Estas en el tema de Mejor desempeño de cursores en el foro de SQL Server en Foros del Web. Hola, quisiera saber si es posible mejor el rendimineto de un cursor en SQL Server 2005, tengo diseñado uno que hace lo que yo quiero ...
  #1 (permalink)  
Antiguo 27/09/2007, 11:26
Avatar de wiro  
Fecha de Ingreso: abril-2006
Mensajes: 72
Antigüedad: 18 años
Puntos: 0
Mejor desempeño de cursores

Hola, quisiera saber si es posible mejor el rendimineto de un cursor en SQL Server 2005, tengo diseñado uno que hace lo que yo quiero pero tiene que manerar una buena cantidad de registros y aveces se me dilata un poco, hasta 45 segundos lo cual es muchisimo, y quiero saber si existen algunas buenas normas en lo referente a la construccion de cursores para mejor el desempeño del mismo.

gracias
  #2 (permalink)  
Antiguo 27/09/2007, 12:41
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Re: Mejor desempeño de cursores

Lo mejor para el desempeño, es no utilizarlos....


Verifica si tu proceso se puede realizar de forma masiva....


Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 28/09/2007, 08:32
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Mejor desempeño de cursores

Un cursor es por definición, lento. 45 segundos es nada comparado con otros cursores que me he encontrado :-\

Otro voto a que te quiebres la cabeza buscando la manera de librarte de los cursores.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #4 (permalink)  
Antiguo 28/09/2007, 10:44
Avatar de wiro  
Fecha de Ingreso: abril-2006
Mensajes: 72
Antigüedad: 18 años
Puntos: 0
Re: Mejor desempeño de cursores

ok gracias, vere que puedo hacer
  #5 (permalink)  
Antiguo 29/09/2007, 13:43
Avatar de Gabo77  
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 17 años, 5 meses
Puntos: 6
Re: Mejor desempeño de cursores

Yo tuve que lidiar con uno que me tardaba cerca de 2 horas....

y es que tenía que indexar los registros de cerca de 150,000 empleados... cada empleado con approx 5 registros..... el cursor debía ordenar por algunos parámetros y ponerles un secuencial por empleado.... es decir para el empleado 1, tenías los indices 1, 2, 3, 4, 5.... para el dos tenías 1, 2, 3, 4, 5, 6... y así....


Voto por la extinción de los cochinos cursores! :D
__________________
Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....
  #6 (permalink)  
Antiguo 01/10/2007, 15:32
Avatar de wiro  
Fecha de Ingreso: abril-2006
Mensajes: 72
Antigüedad: 18 años
Puntos: 0
Re: Mejor desempeño de cursores

jaja les cuento que ya cambie a tb tmp por el cursor que tenia, el cursor se me tardaba aprox 45 segundos, me lelve todo el codigo a tb tmp y las llenos con sp y hago lo que tengo que hacer con los datos en menos de 5 segundos todo el proceso completo que hacia con el cursor en 45 o mas segundos ahora lo hago en 5 o menos seg, la verdad es que los cursores no son de mucha utilidad cuando la cantidad de datos es considerable, abajo los cursores.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:25.