utilizar variable fuera de EXEC () en sp

27/09/2005 - 14:30 por Aprendiz de Informatico | Informe spam
hola, en los pasados dias pregunte como ejecutar una consulta donde
intervenia una variable porque no podia, me respondieron que utilizara EXEC()
o sp_executesql, bueno lo resolvi por medio de exec () pero el problema es
que dentro del codigo que proceso en EXEC () el resultado de esa consulta se
almacena en otra variable, que no existe fuera de ese exec, en el resto del
contexto del procedimiento almacenado. Como hago para usar esa variable,
fuera de ese mismo exec ( ) ?

gracias !!!

Preguntas similare

Leer las respuestas

#1 Carlos Sacristán
27/09/2005 - 14:56 | Informe spam
Con sp_executesql (recomendado antes que usar EXEC() directamente)
puedes usar variables de salida (OUTPUT). Echa un vistazo a la documentación


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Aprendiz de Informatico"
escribió en el mensaje
news:
hola, en los pasados dias pregunte como ejecutar una consulta donde
intervenia una variable porque no podia, me respondieron que utilizara


EXEC()
o sp_executesql, bueno lo resolvi por medio de exec () pero el problema es
que dentro del codigo que proceso en EXEC () el resultado de esa consulta


se
almacena en otra variable, que no existe fuera de ese exec, en el resto


del
contexto del procedimiento almacenado. Como hago para usar esa variable,
fuera de ese mismo exec ( ) ?

gracias !!!
Respuesta Responder a este mensaje
#2 Alejandro Mesa
27/09/2005 - 14:58 | Informe spam
Preferible que uses sp_executesql. Primero porque se puede reusar el plan de
ejecucion, segundo porque en vez de concatenar cadenas para alcanzar la
sentencia final, puedes usar parametros, los cuales nos ayudan a prevenir
inyeccion de codigo hacia sql server y tercero, porque puedes usar parametros
de salida.

Ejemplo:

use northwind
go

declare @i int
declare @sql nvarchar(4000)

set @sql = N'select @i = count(*) from orders'

exec sp_executesql @sql, N'@i int output', @i output

select @i
go


AMB

"Aprendiz de Informatico" wrote:

hola, en los pasados dias pregunte como ejecutar una consulta donde
intervenia una variable porque no podia, me respondieron que utilizara EXEC()
o sp_executesql, bueno lo resolvi por medio de exec () pero el problema es
que dentro del codigo que proceso en EXEC () el resultado de esa consulta se
almacena en otra variable, que no existe fuera de ese exec, en el resto del
contexto del procedimiento almacenado. Como hago para usar esa variable,
fuera de ese mismo exec ( ) ?

gracias !!!
Respuesta Responder a este mensaje
#3 Maxi
28/09/2005 - 02:59 | Informe spam
Hola, y si en lugar de usar todas estas tecnicas nos muestras que quieres
hacer y te damos una mano?


Culminis SQL-Server Speakers (http://latam.culminis.com)

Maxi - Buenos Aires - Argentina
Msn_messager:
mail: Maxi.da[arroba]gmail.com

"Aprendiz de Informatico"
escribió en el mensaje
news:
hola, en los pasados dias pregunte como ejecutar una consulta donde
intervenia una variable porque no podia, me respondieron que utilizara
EXEC()
o sp_executesql, bueno lo resolvi por medio de exec () pero el problema es
que dentro del codigo que proceso en EXEC () el resultado de esa consulta
se
almacena en otra variable, que no existe fuera de ese exec, en el resto
del
contexto del procedimiento almacenado. Como hago para usar esa variable,
fuera de ese mismo exec ( ) ?

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