que tal estoy haciendo un pequeño ejercicio donde quiero obtener el nombre de las columnas de una tabla de una base de datos
estoy usando esta sentencia
SELECT COLUMN_NAME
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA LIKE 'bd_alumnos'
AND TABLE_NAME = 'alumnos';
mi base de datos se llama bd_alumnos
la tabla se llama alumnos
bueno hasta haora funciona,pero como tengo otras tablas dentro de la base de datos
cree un metodo donde paso una cadena como parametro para indicar cual es la tabla que quiero sus nombres de las columnas
este es el metodo :
void obtenerNombreColumnas(String base){
ConexionMySQL mysql = new ConexionMySQL();
Connection con = mysql.conectar();
sSQL = "SELECT COLUMN_NAME FROM information_schema.COLUMNS "
+ "WHERE TABLE_SCHEMA LIKE 'bd_alumnos' AND
TABLE_NAME = "+base;
try {
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(sSQL);
System.out.println("");
while (rs.next()) {
System.out.print(rs.getString(1) + "\t");
}
rs.close();
System.out.println("");
} catch (SQLException ex) {
System.out.println(ex);
}
}
bien haora cuando le paso por ejemplo al metodo alumnos se supone que me mostraria los nombres de las columnas de mi tabla alumnos pero me manda esta excepcion
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorEx ception: Unknown column 'alumnos' in 'where clause'
he buscado y veo que es un problema de espacios en lo que es la sentencia pero ya le busque y no le encuentro
haber si alguien me podria decir como solucionarlo