Fala pessoal beleza? Estou fazendo um trabalho de faculdade e estou conectando no banco com o JDBC, quando vou executar uma query ele me retorna a exception a seguir. Segue também as classes de conexão no banco, de consulta e main.
OBS: a main eu to instanciando a pesquisa apenas para teste, ve se exibe o resultado. ok?
Conecta no banco
[code]package database;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class ConectaBanco {
//Variáveis com os parametros para conexão no banco de dados.
private String host = “jdbc:mysql://localhost/db_transito”;
private String user = “root”;
private String pass = “root”;
public Connection conn;
public Statement stm;
//Método para conectar ao banco de dados MySQL.
public ConectaBanco(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(host, user, pass);
stm = conn.createStatement();
}
catch(ClassNotFoundException ex){
ex.printStackTrace();
}
catch(SQLException ex){
ex.printStackTrace();
}
catch(IllegalAccessException ex){
ex.printStackTrace();
}
catch(InstantiationException ex){
ex.printStackTrace();
}
}
}[/code]
Consulta o Login
[code]package database;
import java.sql.ResultSet;
import java.sql.SQLException;
public class QueryLogin extends ConectaBanco{
private String sqlLogin;
private ResultSet resultado;
private String senha;
public QueryLogin(String usuario){
try{
this.sqlLogin = "select usuario, senha from tb_users where usuario = '" +
usuario + "'";
this.resultado = stm.executeQuery(sqlLogin);
this.senha = resultado.getString("senha");
System.out.println(this.senha);
}
catch(SQLException ex){
ex.printStackTrace();
}
}
public String getSenha(){
return this.senha;
}
}[/code]
Main
[code]package trabalhotransito;
import janelas.;
import database.;
public class Main {
public static void main(String[] args) {
FormPrincipal formPrincipal = new FormPrincipal();
formPrincipal.setVisible(true);
QueryLogin teste = new QueryLogin(“root”);
}
}[/code]
Exception
java.sql.SQLException: Before start of result set
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:984)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:929)
at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)
at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5656)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5576)
at database.QueryLogin.<init>(QueryLogin.java:16)
at trabalhotransito.Main.main(Main.java:10)
outra coisa, é correta a maneira que eu estou trabalhando com a orientacao a objeto? kkk… Digo a respeito de criar todas essas classes separadas…
Obrigado desde já!!!