Buenas, estoy desarrollando un proyecto de fin de curso en el que gestiono una base de datos desde una clase unicamente para ello, donde creo la conexión y los distintos metodos para las sentencias sql.
El problema viene que al rellenar el comboBox con strings empieza a partir del segundo registro de la tabla, es decir el primero nunca aparece.
Os dejo el codigo:
-Metodo para la conexion:
Connection Enlace(Connection c) {
try {
Class.forName("com.mysql.jdbc.Driver");
c = DriverManager.getConnection("jdbc:mysql://localhost/gestionagraria", "root", "");
s = c.createStatement();
} catch (ClassNotFoundException ex) {
Logger.getLogger(GestionAgricolaBD.class.getName() ).log(Level.SEVERE, null, ex);
JOptionPane.showMessageDialog(null, "Problema con la clase Driver del conector");
} catch (SQLException ex) {
Logger.getLogger(GestionAgricolaBD.class.getName() ).log(Level.SEVERE, null, ex);
JOptionPane.showMessageDialog(null, "Problema al conectar con la base de datos");
}
return c;
}
-Metodo para la sentencia:
public ResultSet verEmpleadosNombre() throws SQLException {
try {
rs = s.executeQuery("select nombreEmpleado from empleados");
return rs;
} catch (SQLException ex) {
Logger.getLogger(GestionAgricolaBD.class.getName() ).log(Level.SEVERE, null, ex);
JOptionPane.showMessageDialog(null,"Problema al devolver la select de la tabla empleados");
}
c.close();
return rs;
}
-Ahora como relleno el comboBox:
bd = new GestionAgricolaBD();
DefaultComboBoxModel modeloCombo = new DefaultComboBoxModel();
try {
rs = bd.verEmpleadosNombre();
while (rs.next()) {
comboEmpleado.addItem(rs.getString("nombreEmpleado "));
comboEmpleado.setModel(modeloCombo);
}
} catch (SQLException ex) {
Logger.getLogger(Maquinaria.class.getName()).log(L evel.SEVERE, null, ex);
}
El programa no lanza ningun error y la consulta en el phpmyAdmin muestra todos los registros.
Agradeceria cualquier ayuda ya que es lo unico que me falla, se acerca la entrega y me trae de cabeza.
Un saludo!!