Colocando conteúdo no jComboBox1 do BD Mysql e por meio de uma seleção colocar dentro jTable1

3 respostas
G

Bom gente boa noite, estou aqui para pedir uma ajuda, meu chefe pediu para eu desenvolver um software que no qual ele cadastre algumas empresas e por intermédio do mesmo possa ver valores e bla bla.

Eu não estou conseguindo fazer o seguinte, tem uma jFrame que é para editar uma empresa já cadastrada, eu quero escolher por um combobox a empresa e assim que selecionado aparecer em um jtable.
vou mostrar o código que fiz para o jComboBox1 que está dando errado e do jTable eu não sei fazer e peço a ajuda de vocês como seria feito.

private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {

    Connection con ;  
    Statement stmt ;  
    ResultSet rs = null;
    String empresa=null;

    try {

        Class.forName("org.gjt.mm.mysql.Driver");
        con = (Connection) java.sql.DriverManager.getConnection("jdbc:mysql://localhost:3306/projeto_rodrigo", "gustavo", "123");
        stmt = (Statement) con.createStatement();
        
        rs = (ResultSet) stmt.executeQuery("SELECT empresa_nome FROM projeto_novo"); 
        
        DefaultComboBoxModel m = new DefaultComboBoxModel();
        
        while (rs.next()) {
            m.addElement(rs.getString("empresa_nome"));
           jComboBox1.setModel(m);
                }
        stmt.close();
        con.close();
        
        }catch (Exception e) {
        e.printStackTrace();
        
        JOptionPane.showMessageDialog(null,"Erro na Busca");
        }

}

E a parte do jTable como eu faria ?

3 Respostas

D

Olá amigo, primeiro você deveria organizar seu código, você tá fazendo toda a parte da conexão vinculado a um evento. Crie uma classe com os métodos para manipulação do banco, o método conectar, desconectar, o de preencher o combo etc…

Para o combo você faz isso:

stmt.executeQuery("SELECT empresa_nome FROM projeto_novo");

e em outro método você pode fazer assim:

stmt.executeQuery("SELECT *FROM projeto_novo where  empresa_nome='"+nomeSelecionadoCombo+"');

E outra, não precisa converter isso:

stmt = (Statement) con.createStatement(); 

rs = (ResultSet) stmt.executeQuery("SELECT empresa_nome FROM projeto_novo");
G

Fiz a alteração, rs = (ResultSet) stmt.executeQuery(“SELECT empresa_nome FROM nova_empresa=’”+jComboBox1+"’");

E continuo na mesma, na opção dois já tinha feito e dá na mesma, a preparação da classe conexao deixei sem mesmo por que é mais facil para mostrar para vocês que estou colocando tudo certinho e ele está conectando porém não está exibindo o valor “empresa_nome” no jComboBox1

D

Dessa forma tá errada, tem que ser assim:

stmt.executeQuery("SELECT  FROM nova_empresa WHERE empresa_nome='"+nomeSelecionadoNoCombo+"'");

aí você tem que passar o item selecionado co jComboBox1.

Poste a parte em que você adiciona à tabela.

Criado 12 de abril de 2012
Ultima resposta 14 de abr. de 2012
Respostas 3
Participantes 2