Tengo una web conectada a una base de datos e ingreso los datos correctamente...
necesito un programa en JAVA que se conecte y muestre algunos datos, el problema es que se conecta pero a la hora de ingresar los comandos
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM tren");
no funciona :/
aqui el codigo
package prueba;
import java.sql.*;
public class Prueba {
public static void main(String args[]) {
try {
//Cargamos el puente JDBC => Mysql
System.out.println("Intentando cargar el conector...");
Class.forName("com.mysql.jdbc.Driver");
//Intentamos conectarnos a la base de Datos en este caso una base llamada temp
System.out.println("Conectando a la base...");
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost", "root", ""
);
System.out.println("Conexion a BD establecida");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM tren");
con.close();
} catch(SQLException ex) {
System.out.println("Error de mysql");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch(Exception e) {
System.out.println("Se produjo un error inesperado: "+e.getMessage());
}
}
}
AUTO SOLUCIONADO!
Primero puse este codigo:
Statement stmt = con.createStatement();
ResultSet rs=stmt.executeQuery("SELECT * FROM tren");
System.out.println("Login\tPassword");
while(rs.next()) {
System.out.println(rs.getString("idTren")+"\t"+rs.getString("modelo"));
}
y segundo me falto agregar la base de datos en el getconnection
DriverManager.getConnection(
"jdbc:mysql://localhost/nombre_bd".....
Eso te iba a decir yo ahora.... pero visto que ya lo has solucionado mejor....
por cierto, no es que sea raro o que no vaya a funcionar, pero juraria que a mi me daba fallo al hacer un String query = "SELECT * from tabla";
sin ponerle comillas simples a tabla
es decir, juraria que para que funcione bien tienes que hacer lo siguiente (pero si te funciona mejor que mejor):
String query = "SELECT * from 'tabla' ";