lunes, 5 de octubre de 2015

Recorrer Tabla SQL con un cursor y actualizar columna Primary Key

Si estas buscando algo como el  SqlDataReader  en SQL y un while (reader.read()) este es el equivalente en SQL Server.
Para recorrer una tabla  y actualizar los valores de una columna  utilizando un cursor. En este caso numeré una columna que necesitaba fuera la primary key de 1 en  1

declare @filas int,@idPais int,@idEstado int,@idCiudad int,@idCodigoPostal int
declare @contador int
set @contador=1;
DECLARE cCursor CURSOR
FOR
     SELECT idPais,idEstado,idCiudad,idCodigoPostal from CodigosPostales 
     OPEN cCursor;
FETCH cCursor INTO @idPais,@idEstado,@idCiudad,@idCodigoPostal
WHILE (@@FETCH_STATUS = 0)
BEGIN
Update CodigosPostales set ID=@contador  where idPais=@idPais AND idEstado=@idEstado AND idCiudad=@idCiudad AND idCodigoPostal=@idCodigoPostal
set @contador=@contador+1;
FETCH cCursor INTO @idPais,@idEstado,@idCiudad,@idCodigoPostal
END
CLOSE cCursor;
DEALLOCATE cCursor;








No hay comentarios.:

Publicar un comentario