Hola a todos, en esta oportunidad dejo una pequeña funcion que lo que hace es consultar la base de datos y mostrar los resultados del campo en un JComboBox de java:
Muy pronto como Mostrar el Resultado SQL en un JTable Java.
Deja tu comentario o agradecimiento...
public void Buscar(){ // Conectar a mysql: Connection conn; String bd = "base"; String login ="root"; String password ="tu clave"; String url = "jdbc:mysql://localhost/"+bd; //limpio el combobox jcbDocentes.removeAllItems(); try{ Class.forName("com.mysql.jdbc.Driver"); Connection conne=(Connection) DriverManager.getConnection(url,login,password); Statement consulta=(Statement) conne.createStatement(); //consulta sql a la tabla docentes solo campo nomdocente ResultSet rsdocentes = consulta.executeQuery ("select nomdocente from docentes"); // Se recorre el ResultSet docentes. while (rsdocentes.next()) { //este es el Jcombobox jcbDocentes.addItem(rsdocentes.getObject("nomdocente")); } conne.close(); } catch(SQLException e){ JOptionPane.showMessageDialog(null,"Error sql no se pueden leer datos"); } catch(ClassNotFoundException e){ JOptionPane.showMessageDialog(null,"Error al leer la base de datos"); } }
Muy pronto como Mostrar el Resultado SQL en un JTable Java.
Deja tu comentario o agradecimiento...
Muchas gracias! Saludos!
ResponderEliminarBuenas xD,me parec interesante tu codigo,le voy agregar nuevas cosas,y lo posteo saludos y gracias
ResponderEliminarGRACIAS POR EL APORTE
ResponderEliminarantes de probar dichos códigos, muchas gracias por subir este tipo de información a la red.
ResponderEliminarSe agradece!!!!
ResponderEliminarSaludos
hola a todos a mi no me funciona me da un error del tipo NullPointerException en el resultSet cuando ejecuta la query ej: ResultSet rsdocentes
ResponderEliminar= consulta.executeQuery ("select nomdocente from docentes");
Necesito su respuesta
Gracias!!
si pueden mandenme un mail a victor.ariel.perez@gmail.com
Hola viktor, lo que puede estar ocurriendo es que la estructura de la base de datos no coincide con el código revisa esta parte, tambien nos puedes compartir la estructura de la base de datos para poder ayudarte mejor.
ResponderEliminarSaludos,
¡Total!. Una aportación muy interesante. Es una suerte que haya gente que haga estos aportes en la red.
ResponderEliminarGracias.
amigo muy buenos tutoriales pero tambien necesitamos como haces para insertar a una base de datos access algunos de los item que selecccione del JCombobBox pero hay que saber que ese JComboBox se llenan desde la base de datos y como los vuelvo a insertar a l abse de datos??? te agradezco su comprension y le agradezco inmensamente si respondes.....
ResponderEliminarLos JComboBox tiene una propiedad .getItemAT(); la cual se encarga de obtener el String del item seleccionado, ahora para Mantener una base de datos semi-normalizada no es recomendable guardar datos que más adelante pueden ser modificfados por otro usuario, entonces no sería el mismo contenido almacenado anteriormente; LO recomendable el almacenar el ID del registro en la base da datos.
Eliminarpana podrias mostrar una conexion pero con postgrsql y como mostrar datos eliminar e ingresar
ResponderEliminar//metodo guardar tipos de usuario:
Eliminarpublic void GuardarTipoUsuarios(String tipo_usuario, String comentarios){
// variables:
static String driver = "org.postgresql.Driver";
static String ruta = "jdbc:postgresql://localhost:5432/base";
static String user:"postgres";
static String password:"clave";
// Insertar datos a la bd:
try{
Class.forName(driver);
Connection conne=(Connection) DriverManager.getConnection(ruta,user,password);
Statement consulta=(Statement) conne.createStatement();
consulta.executeUpdate("insert into tipo_usuarios(tipo_usuario, comentarios) values('"+tipo_usuario+"','"+comentarios+"')");
}catch(SQLException e){
JOptionPane.showMessageDialog(null,"Este grupo ya existe");
}catch(ClassNotFoundException e){
JOptionPane.showMessageDialog(null,"Error inesperado");
}
}
Espero que sea de tu ayuda nos cuentas por favor...
Gracias men por todo muy buena explicacion como hago para consultar la fecha de una base de datos que tengo y mostrarla en un JDateChooser en java netbeans peroque cuando la consulte el me trae los datos pero en el boton actualizar no se deja acualizar la fecha q ingreso el resto de campos si se deja actualizar te agraddezco men
ResponderEliminarhola, muy bueno tu codigo gracias,
ResponderEliminaruna pregunta
tengo dos combobox en un frame, el primer combobox se llama estado y tiene las descripciones de los estados, el segundo es municipio y debe tomar las descripciones del municipio,
todo esto desde una base de datos,
como puedo tomor el id del estado para guardarlo en un procedimiento almacenado para que se guarde algo asi:
id estado descripcion_municipio
1 coacalco
el id del municipio se agrega automatico
Buenos días;
EliminarYo lo que hago en estos casos es una sub-consulta, en el evento del selección de ítems del JComboBox con alguna variable, array o return que me capture la ción que necesite en ese momento.
Espero te ayude...
Hola, muchas gracias, pero si quiero mostrar el nombre y quiero registrar el codigo como seria?
ResponderEliminarHola Renzo, si quieres revisa esta publicación, parece ser lo que necesitas:
Eliminarhttp://www.javamexico.org/foros/java_enterprise/musql_netbeans_jdbc_jcombo_joption_problema_resuelto
Amigo me salvaste la vida!!!!!!!!!! MUCHAS GRACIAS!!!
ResponderEliminary si Hago en boton buscar al codigo de jcombobox con le metodo rs.next me coge el sgt ejmplo mi categoria es 6 y muestra 7
ResponderEliminarHola gran comunidad yo tengo una duda espero me puedan ayudar tengo 2 Jcombobox uno es de estados y otro de ciudades ambos son llenados desde una base de datos en sql server hasta ahi todo bien, pero no se como hacer que cuando por ejemplo yo selecciono X estado me aparezcan sus respectivas ciudades ojala me puedan ayudar
ResponderEliminarEste es un método más espero que les sea útil...
ResponderEliminarString sql=“SELECT*FROM doctores"
public void llenarcombox(){
Try{
PreparedStatement pst=con.preparedStatement(sql);
ResultSet es=con.executeQuery(sql);
While(es.next){
Jcomboxdoctores.addItem(es.getObject(“nAmedico“)
}
}catch(SQLException ex){
JOptionLane.showMessageDialog(null,ex);
}
Muchas Gracias Franco, por tu aporte !!!!
EliminarHola, necesito saber en que parte del codigo tengo que poner este codigo para que funcione. Al crear una jFrame para diseñar me aparece todo esto:
ResponderEliminarimport java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JComboBox;
import javax.swing.JLabel;
public class prueba2 extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
prueba2 frame = new prueba2();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public prueba2() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JComboBox comboBox = new JComboBox();
comboBox.setBounds(175, 78, 88, 20);
contentPane.add(comboBox);
JLabel lblMostrar = new JLabel("Mostrar");
lblMostrar.setBounds(80, 70, 63, 36);
contentPane.add(lblMostrar);
}
}
Quisiera saber en que parte tengo que insertar este codigo para que funcione.
Hola, esté código lo debes colocar en la parte pública de la clase, es decir, puede ser debajo de:
EliminarcontentPane.setLayout(null);
* Hay que tener en cuenta el nombre de la variable que tiene el objeto JCombobox.
despúes solo queda llamar a la función buscar(), eso lo puedes hacer justo despúes de haber declarado la función, o tambien podrías sacar el código de esa función para que se ejecute inmediatamente con la clase.
EliminarBuenas noches, quien me colabora con este tema tengo que llenar un jCombobox con registros en una BD gestionada desde phpMyAdmin. Quien tiene la gentileza y me colabora. a Continuacion muestro conexion y jframe.
ResponderEliminarconexion
package pcelite;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
/**
*
* @author luis_
*/
public class Conector_pc {
Connection Conexion;
Statement Sentencia;
Connection Conexion2;
Statement Sentencia2;
void Preparar_BD() throws InstantiationException, IllegalAccessException {
try {
String Controlador;
Controlador="com.mysql.jdbc.Driver";
Class.forName(Controlador).newInstance();
}
catch (ClassNotFoundException ex) {
JOptionPane.showMessageDialog(null, "ERROR AL CARGAR DRIVE");
}
try {
String ruta="jdbc:mysql://localhost/pcelite";
String usuario = "root";
String contraseña= "1102809567";
Conexion= DriverManager.getConnection(ruta, usuario, contraseña);
}
catch (SQLException ex){
JOptionPane.showMessageDialog(null, "ERROR AL CARGAR LA BASE DE DATOS");
}
try {
Sentencia=Conexion.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
}
catch (SQLException ex){
JOptionPane.showMessageDialog(null, "ERROR AL CARGAR LA SENTENCIA");
}
}
void Preparar_BD2() throws InstantiationException, IllegalAccessException {
try {
String Controlador2;
Controlador2="com.mysql.jdbc.Driver";
Class.forName(Controlador2).newInstance();
}
catch (ClassNotFoundException ex) {
JOptionPane.showMessageDialog(null, "ERROR AL CARGAR DRIVE");
}
try {
String ruta="jdbc:mysql://localhost/pcelite";
String usuario = "root";
String contraseña= "12345678";
Conexion2= DriverManager.getConnection(ruta, usuario, contraseña);
}
catch (SQLException ex){
JOptionPane.showMessageDialog(null, "ERROR AL CARGAR LA BASE DE DATOS");
}
try {
Sentencia2=Conexion2.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
}
catch (SQLException ex){
JOptionPane.showMessageDialog(null, "ERROR AL CARGAR LA SENTENCIA");
}
}
ResultSet getSql(String select_iDnombre_FROM_materias_ORDER_BY_ID) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
void cerrar() {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
Este es el ejemplo como haria:
ResponderEliminarpublic void llenar_combobox(){
DefaultComboBoxModel value;
try {
Statement stmt = cn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT Id_Proveedor,Nom__Proveedor FROM proveedores ORDER BY Id_Proveedor ASC");
value =new DefaultComboBoxModel();
jComboBox1.setModel(value);
while (rs.next()) {
value.addElement(new persona(rs.getString("Nom__Proveedor"),rs.getString("Id_Proveedor")));
}
rs.close();
cn.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
Gracias por el aporte, es una manera clara y sencilla, sin dar muchas vueltas al asunto.
ResponderEliminarTU PUTA MADRE
ResponderEliminarQUE BUENA
ResponderEliminar