Consulta dinamica

23/11/2005 - 13:19 por Jordi | Informe spam
Hola,
Como puedo realizar esta consulta de forma dinámica.
Este código no me funciona, como puedo realizarlo?
DECLARE @lcQuery varchar(400), @lcSql1 varchar(400), @lcSqlAux varchar(400)

SET @lcSql1=N' IN (''TPECA16'')'

SET @lcQuery=N'SELECT * FROM Peca WHERE cTPeca'

SET @lcQuery=@lcQuery +@lcSql1

EXEC sp_executesql @lcQuery

Gracias

Preguntas similare

Leer las respuestas

#1 Carlos Sacristán
23/11/2005 - 13:33 | Informe spam
Yo no usaría sql dinámico para lo que estás intentando, hay otras
opciones mejores. Echa un vistazo a este artículo:
http://www.sommarskog.se/arrays-in-sql.html


Un saludo

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

"Jordi" escribió en el mensaje
news:dm1mo5$k21$
Hola,
Como puedo realizar esta consulta de forma dinámica.
Este código no me funciona, como puedo realizarlo?
DECLARE @lcQuery varchar(400), @lcSql1 varchar(400), @lcSqlAux


varchar(400)

SET @lcSql1=N' IN (''TPECA16'')'

SET @lcQuery=N'SELECT * FROM Peca WHERE cTPeca'

SET @lcQuery=@lcQuery +@lcSql1

EXEC sp_executesql @lcQuery

Gracias


Respuesta Responder a este mensaje
#2 Alejandro Mesa
23/11/2005 - 16:08 | Informe spam
Jordi,

No funciona porque el procedimiento sp_executesql espera que el parametro
'@statement' sea tipo "ntext/nchar/nvarchar".

Yo no creo, como dice Carlos, que sea necesario usar sql dinamico para esta
consulta. Pudieras ampliar mas po que quieres usar este esquema?


AMB

"Jordi" wrote:

Hola,
Como puedo realizar esta consulta de forma dinámica.
Este código no me funciona, como puedo realizarlo?
DECLARE @lcQuery varchar(400), @lcSql1 varchar(400), @lcSqlAux varchar(400)

SET @lcSql1=N' IN (''TPECA16'')'

SET @lcQuery=N'SELECT * FROM Peca WHERE cTPeca'

SET @lcQuery=@lcQuery +@lcSql1

EXEC sp_executesql @lcQuery

Gracias



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