Los mejores
trucos de informática
y
trucos de programación
.
Inicio
Trucos de Windows
Informáticos
Nosotros
Registrar
Menú Privado
Trucos Windows
Trucos de Windows 7
Trucos de Windows Vista
Trucos de Windows XP
Windows 2003 Server
Trucos de Messenger
Trucos de Office
Trucos de Redes
Trucos Programación
Visual Basic.NET
Visual Basic 6
Trucos C#
Trucos ASP.NET
Trucos ASP.NET 2.0
SQL Server 2000
SQL Server 2005
Javascript
Trucos CSS
Otros Trucos
Trucos de SEO
Posicionar una web
Trucos de Google
Trucos Hardware
Varios
Nosotros
Webs recomendadas
Videos
Videos de humor
Trucos
Animales
Baja de Jazztel
<< Truco Anterior
Siguiente truco >>
Trucos de Sql Server
Crear un Cursor Paso a Paso
Crear un Cursor
Con este truco sabrás construir un cursor paso a paso. Debemos recordar que no hay que abusar de los cursores ya que son costosos para el servidor SQL Server.
-- Declaramos una Variable donde se guardará los ID’s
DECLARE @Variable numeric
DECLARE NombreDelCursor CURSOR FAST_FORWARD
FOR
-- Realizamos la consulta que queremos guardar en la variable
SELECT
[ID]
FROM
[Tabla]
With(NoLock)
-- Abrimos el cursor
OPEN NombreDelCursor
FETCH NEXT FROM NombreDelCursor INTO
@ Variable
WHILE (@@FETCH_STATUS <> -1)
BEGIN
IF (@@FETCH_STATUS <> -2)
BEGIN
-- Hacemos un print para ver que la variable es correcta (Solo es a nivel de comentario, para probar que funciona, cuando funcione quitamos esta linea del print @Variable
print @ Variable
--Realizar las tareas deseadas, como updatear los usuarios, caducarlos, etc… (Podemos llamar a otros storeds…)
UPDATE
Tabla
With(RowLock)
SET
Estado=2
WHERE
IdUsuario=@Variable
END
--Accedemos al siguiente registro del cursor
FETCH NEXT FROM NombreDelCursor INTO
@ Variable
END
--Cerramos el cursor
CLOSE NombreDelCursor
-- lo sacamos de la memoria
DEALLOCATE NombreDelCursor
Pon el truco en tus favoritos
Compartir en:
Comentarios sobre Crear un Cursor Paso a Paso
Boris Alzamora
dice:
Muchas gracias por la información, considerar que después del "END" del IF que involucra el negocio del curso, deberia haber otro "END" que cierre el While. Gracias nuevamente,
Comentario publicado 11/04/2010 22:41:00
Damian
dice:
Muy bueno
Comentario publicado 01/07/2010 17:20:00
Dejar un comentario
Nombre:
Mail:
Web:
Comentario:
Contactar con mistrucos.net