error en consulta a mysql?ayuda!

Iniciado por rey45, 26 Febrero 2016, 04:48 AM

0 Miembros y 1 Visitante están viendo este tema.

rey45

saludos a toda la gente del foro, miren tengo el sugiente problema al hacer una consulta desde java a mysql.
la consulta seria esta:

      select *from ? where nombre=? and apellido=?;


el error me da cuando donde deberia ir el nombre de la tabla pongo el "?" pero si pongo solo la consulta  select *from tabla where nombre=? and apellido=?;  no tiene problemas,
y necesito que sea asi para poder usar este metodo con varias tablas y no solo para la tabla 1, alguna idea de como puede se esto en java?

fran800m

¿Cómo estás lanzando esa consulta?

rey45

lo estoy haciendo con preparedStatement

xiruko

Las sentencias preparadas se usan para substituir los parámetros, no para los nombres de los campos ni para los nombres de las tablas. Así que usa lo que dices que te funciona:

SELECT * FROM tabla WHERE nombre = ? AND apellido = ?

Saludos!

rey45

pero no hay alguna manera de poder cambiar la tabla, tenido la misma sentencia, para no volver a crear otro método en el que solo cambie el nombre de la tabla de la base de datos?
igual gracias por tu ayuda!

sodark

Pasa las tablas por el argumento del metodo.