Não executa o ResultSet

3 respostas
G

Eu já criei um ResultSet e um Statement só para que ele funciona-se, mas ele simplesmente não funciona! Alguma coisa está errada, mas eu não compreendo, o código não apresenta erros e compila e executa com sucesso. Mas quando "clico" no botão, o primeiro ResultSet funciona, o segundo não. Ficarei grato se alguém puder me ajudar!

Class.forName(driver);
            conn = (Connection) DriverManager.getConnection(url, user, pass);
            Statement stmt = (Statement) conn.createStatement();
            Statement stmt2 = (Statement) conn.createStatement();
            ResultSet rs;
            ResultSet rs2;
        
            if (e.getSource() == ce) {
                if(itemSelecionado.equals("Cadastrar Disciplina")) {

                }
                if(itemSelecionado.equals("Cadastrar Tópico")) {
                    String itemComboBox = comboBox.getSelectedItem().toString();
                    String id_disciplina = null;

                    rs = stmt.executeQuery("SELECT id, disciplina FROM disciplina WHERE disciplina = '"+ itemComboBox +"'");
                    while(rs.next()) {
                        id_disciplina = rs.getString(1);
                    }
                    
                    rs2 = stmt2.executeQuery("INSERT INTO topicos(id_disciplina, topico) VALUES('"+ id_disciplina +"', '"+ campoDeTexto.getText() +"')");
                    while(rs2.next()) {
                        JOptionPane.showMessageDialog(null, "Novo Tópico Inserido", "O Tópico foi adicionado ao banco de dados.", JOptionPane.INFORMATION_MESSAGE);
                    }
                }
          }

3 Respostas

E

O ResultSet serve somente para consulta, recuperar dados do banco, nw para inserção.

G

utilizo o que então?

Z

use stmt2.executeUpdate(“seu insert ou update”);

o ResultSet nesse caso esta sem utilidade, retire a mensagem de dentro do while e remova esse while

Abraço !

Criado 27 de fevereiro de 2010
Ultima resposta 27 de fev. de 2010
Respostas 3
Participantes 3