Foros del Web » Programación para mayores de 30 ;) » Java »

Insertar parámetro en sentencia SQL con IN ()

Estas en el tema de Insertar parámetro en sentencia SQL con IN () en el foro de Java en Foros del Web. Buenas... Tengo una sentencia SQL de la forma [SELECT * FROM TABLA WHERE CAMPO IN (?)], y, por supuesto, necesitaría pasarle los parámetros que tienen ...
  #1 (permalink)  
Antiguo 19/02/2007, 04:56
Usuario no validado
 
Fecha de Ingreso: febrero-2003
Ubicación: Bilbao
Mensajes: 51
Antigüedad: 21 años, 3 meses
Puntos: 0
Insertar parámetro en sentencia SQL con IN ()

Buenas...

Tengo una sentencia SQL de la forma [SELECT * FROM TABLA WHERE CAMPO IN (?)], y, por supuesto, necesitaría pasarle los parámetros que tienen que ir dentro del IN desde JAVA.

He intentado:

1) concatenar todos los parámetros en un String de la forma ['uno', 'otro', 'otro'], y hacer luego un setString.
2) concatenarlos del mismo modo pero sin la comilla inicial ni la final, es decir: [uno', 'otro', 'otro], y hacer un setString
3) concatenarlos sin ningún tipo de comilla [uno, otro, otro], también con setString

La verdad es que ya no se me ocurre nada más, y no ha funcionado ninguna de estas opciones. El resto de la query está bien y debería dar resultados, pero... parece que esta parte no le acaba de gustar al señor Java

Gracias...
  #2 (permalink)  
Antiguo 19/02/2007, 06:16
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: Insertar parámetro en sentencia SQL con IN ()

Algunas discusiones aqui:
http://www.javaranch.com/journal/200...l200510.jsp#a2

Respuesta corta: No se puede, ya que SQL no permite sustituir un ? por varios valores.

No lo he tenido que hacer nunca, así que más note puedo decir. Por si te sirve saber como llegué a las referencias: -> Google y "prepared statement IN clause". Primer hit .

S!
  #3 (permalink)  
Antiguo 19/02/2007, 06:36
Usuario no validado
 
Fecha de Ingreso: febrero-2003
Ubicación: Bilbao
Mensajes: 51
Antigüedad: 21 años, 3 meses
Puntos: 0
Re: Insertar parámetro en sentencia SQL con IN ()

Y yo buscando en google antes de venir a incordiar aquí...
¡Muchas gracias!
Marchando código alternativo...
  #4 (permalink)  
Antiguo 31/12/2007, 05:33
 
Fecha de Ingreso: abril-2005
Mensajes: 171
Antigüedad: 19 años
Puntos: 0
Re: Insertar parámetro en sentencia SQL con IN ()

Hola, al final lograste solucionar esto??? esq estoy probando un codigo y creia que esto si iba a funcionar cuando me he encontrado con el problema de que no va y ando pillado de tiempo.

Gracias
  #5 (permalink)  
Antiguo 01/01/2008, 06:41
Usuario no validado
 
Fecha de Ingreso: febrero-2003
Ubicación: Bilbao
Mensajes: 51
Antigüedad: 21 años, 3 meses
Puntos: 0
Re: Insertar parámetro en sentencia SQL con IN ()

Ahora mismo no tengo el código aquí, pero creo recordar que resolví el problema generando dinamicamente la sentencia, concatenándola toda ella a pelo en un String. No es como deben hacerse las sentencias SQL, vale, pero cuando se anda pillado de tiempo...
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 08:40.