Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Debe declarar la variable escalar "@T_INS".

Estas en el tema de Debe declarar la variable escalar "@T_INS". en el foro de SQL Server en Foros del Web. DECLARE @T_INS VARCHAR(100) DECLARE @AUX3 VARCHAR(50) DECLARE @AUX2 VARCHAR(200) SET @T_INS = N'HOLA ' SET @AUX3 ='@T_INS' SET @AUX2 ='SET '+@AUX3+' = '+char(39)+'mundo'+char(39) EXEC (@aux2) ...
  #1 (permalink)  
Antiguo 03/03/2014, 12:16
 
Fecha de Ingreso: marzo-2014
Mensajes: 1
Antigüedad: 10 años, 1 mes
Puntos: 0
Debe declarar la variable escalar "@T_INS".

DECLARE @T_INS VARCHAR(100)
DECLARE @AUX3 VARCHAR(50)
DECLARE @AUX2 VARCHAR(200)

SET @T_INS = N'HOLA '
SET @AUX3 ='@T_INS'

SET @AUX2 ='SET '+@AUX3+' = '+char(39)+'mundo'+char(39)

EXEC (@aux2)

GO


como puedo ejecutar esa cadena
  #2 (permalink)  
Antiguo 03/03/2014, 12:23
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Debe declarar la variable escalar "@T_INS".

sencillo :)

Código SQL:
Ver original
  1. DECLARE @T_INS VARCHAR(100)
  2. DECLARE @AUX3 VARCHAR(50)
  3. DECLARE @AUX2 VARCHAR(200)
  4.  
  5. SET @T_INS = N'HOLA '
  6. SET @AUX3 ='@T_INS'
  7.  
  8. SET @AUX2 ='
  9. declare @T_INS VARCHAR(100)
  10. SET '+ @AUX3 + ' = '+CHAR(39)+'mundo'+CHAR(39)
  11.  
  12. EXEC (@aux2)

aunque te recomiendo que mejor uses sp_executesql y que veas las opciones que tiene este comando para retornar el valor en una variable :P porque asi como lo estas haciendo no vas a poder usar el valor de aux3
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: declarar, escalar, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:45.