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.

Preguntas similare

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.



Respuesta Responder a este mensaje
#2 JoseG12
26/06/2008 - 20:38 | Informe spam
No lo que deseo es usar es misma metodologia
para correr una consulta, porque para el update
fuenciona perfectopero tambien quiero ejecutar
una de esta misma formaque se ubique de una vez
en la fila.

Lo que pasa que tengo que ir a esa misma varias veces pero segun
por el criterio se evalue, en vez de repitir lo misma validacion (Pero OJO:
pero con otros campos) y evitar que haga una busqueda completa
que solo se coloque en la fila que esta validada.

"Gux (MVP)" wrote in message
news:
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.



Respuesta Responder a este mensaje
#3 Gux (MVP)
26/06/2008 - 21:51 | Informe spam
Tal vez no estoy entendiendo bien el problema... No existe tal cosa de hacer
una búsqueda completa, cuando usted accede a datos filtrados por alguna
condición, no sucede una búsqueda secuencial en todos los datos.

Si entendí mal, por favor ignore mi comentario.

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:

No lo que deseo es usar es misma metodologia
para correr una consulta, porque para el update
fuenciona perfectopero tambien quiero ejecutar
una de esta misma formaque se ubique de una vez
en la fila.

Lo que pasa que tengo que ir a esa misma varias veces pero segun
por el criterio se evalue, en vez de repitir lo misma validacion (Pero OJO:
pero con otros campos) y evitar que haga una busqueda completa
que solo se coloque en la fila que esta validada.

"Gux (MVP)" wrote in message
news:
> 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.
>>
>>
>>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida