Help me!! Quiero una opinion de WHERE CURRENT OF

26/06/2008 - 17:59 por JoseG12 | Informe spam
Buenas Dias, Me justaria saber si alquien me puede
ayudar con inconita. Ejemplo:

GO
DECLARE @CAMPO1,@CAMPO2

DECLARE MiTemporal CURSOR FOR
SELECT Campo1,Campo2 FROM MiTabla FOR UPDATE -- Para Actualizacion

OPEN MiTemporal

FETCH NEXT FROM MiTemporal INTO @CAMPO1,@CAMPO2

directamente
UPDATE MiTabla Set Campo1='001' WHERE CURRENT OF MiTemporal

CLOSE MiTemporal
DEALLOCATE MiTemporal
GO

Como pondran ver la actualizacion de la fila se efectua
directamente sin tener que realizar el recorrido completo en una
tabla para actualizarla, ahora bien, lo quiero saber si esposible
usar ese mismo metodo con una consulta, algo Asi.

Esto da Error en Sql Server ...pero Habla Algo Similar ??? sin tener
que recorrer la tabla completa, para obtener la misma fila pero con otros
campos.

Select * from MiTabla Wehere CURRENT OF MiTemporal

resultardos instaneos, sin volver hacer todo el recorrido en la base de
datos.
 

Leer las respuestas

#1 Gux (MVP)
26/06/2008 - 20:22 | Informe spam
Realmente usted quiere usar un cursor para hacer un UPDATE?

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"JoseG12" wrote:


Buenas Dias, Me justaria saber si alquien me puede
ayudar con inconita. Ejemplo:

GO
DECLARE @CAMPO1,@CAMPO2

DECLARE MiTemporal CURSOR FOR
SELECT Campo1,Campo2 FROM MiTabla FOR UPDATE -- Para Actualizacion

OPEN MiTemporal

FETCH NEXT FROM MiTemporal INTO @CAMPO1,@CAMPO2

directamente
UPDATE MiTabla Set Campo1='001' WHERE CURRENT OF MiTemporal

CLOSE MiTemporal
DEALLOCATE MiTemporal
GO

Como pondran ver la actualizacion de la fila se efectua
directamente sin tener que realizar el recorrido completo en una
tabla para actualizarla, ahora bien, lo quiero saber si esposible
usar ese mismo metodo con una consulta, algo Asi.

Esto da Error en Sql Server ...pero Habla Algo Similar ??? sin tener
que recorrer la tabla completa, para obtener la misma fila pero con otros
campos.

Select * from MiTabla Wehere CURRENT OF MiTemporal

resultardos instaneos, sin volver hacer todo el recorrido en la base de
datos.



Preguntas similares