Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: rey45 en 26 Febrero 2016, 04:48 am



Título: error en consulta a mysql?ayuda!
Publicado por: rey45 en 26 Febrero 2016, 04:48 am
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?


Título: Re: error en consulta a mysql?ayuda!
Publicado por: fran800m en 26 Febrero 2016, 17:52 pm
¿Cómo estás lanzando esa consulta?


Título: Re: error en consulta a mysql?ayuda!
Publicado por: rey45 en 26 Febrero 2016, 18:58 pm
lo estoy haciendo con preparedStatement


Título: Re: error en consulta a mysql?ayuda!
Publicado por: xiruko en 26 Febrero 2016, 18:59 pm
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!


Título: Re: error en consulta a mysql?ayuda!
Publicado por: rey45 en 26 Febrero 2016, 20:09 pm
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!


Título: Re: error en consulta a mysql?ayuda!
Publicado por: sodark en 26 Febrero 2016, 20:27 pm
Pasa las tablas por el argumento del metodo.