Performance SQL Server

05/09/2005 - 20:17 por Tumba | Informe spam
Hola, otra vez solicitando ayuda. queria saber si me pueden dar una mano para
optimizar el servidor SQL Server ya que esta teniendo problemas para resolver
consultas que antes lo hacia sin problemas.

Tengo un Bucle que recorre una tabla temporal (esta echo con un WHILE porque
estaba con cursores) el problema es que en el recorrido se hace un SQL
Dinamico y se manda a ejecutar unos stored para unos 250 registros. este
Stored tiene problema de bloqueos (deadlocks) lo que hicimos es generar los
stored Procedure que llama para devuelvan un valor sin hacer consultas para
ver cual es el que tenia problemas y nos encontramos que tarda 22 segundos en
hacer el recorrido de los 250 registros llamando a los SP que no devuelven
valores (dummy) ¿Puede ser que demore tanto? ¿como puedo detectar si el
Servidor tiene problemas?

Tambien me gustaria su opinion a pros y contra de reemplazar cursores con
bucles WHILE de una tabla temporal.
EJ:

WHILE (Select Count(*) From #Cargos) > 0
BEGIN
SELECT TOP 1 @idCargo = idCargo, @idUbicacion = idUbicacion


END

DELETE From #Cargos
 

Leer las respuestas

#1 Eleazar
05/09/2005 - 23:06 | Informe spam
Hola solo una observacion (en el ejemplo que nos muestras)
dentro del ciclo nunca eliminas el registro que obtuviste en esa pasada es
decir
antes del END
Delete From #Cargos Where idCargo = @idCargo And idUbicacion = @idUbicacion

WHILE (Select Count(*) From #Cargos) > 0
Mostrar la cita
"Tumba" escribió en el mensaje
news:
Mostrar la cita
para
Mostrar la cita
resolver
Mostrar la cita
porque
Mostrar la cita
los
Mostrar la cita
para
Mostrar la cita
en
Mostrar la cita

Preguntas similares