Erro SQL em botao Anterior e Proximo

4 respostas
blackfalcon

Ola pessoal, estou postando abaixo os 4 botoes, primeiro registro, proximo registro, registro anterior, ultimo registro.

private void btn_PrimeiroActionPerformed(java.awt.event.ActionEvent evt) {                                             
        try {
            conexao.select("SELECT * FROM tb01");

            conexao.resultset.first();
            //ativarCampos();

            mostrarDados();
            txt_Codigo.setEnabled(false);
            mostrarDadosPrecos();
        } catch (SQLException ex) {
            Logger.getLogger(CadastrarProdutos.class.getName()).log(Level.SEVERE, null, ex);
        }
    }                                            

    private void btn_AnteriorActionPerformed(java.awt.event.ActionEvent evt) {                                             
        try {
            conexao.resultset.previous();
            mostrarDados();
            txt_Codigo.setEnabled(false);
            mostrarDadosPrecos();

        } catch (SQLException ex) {
            Logger.getLogger(CadastrarProdutos.class.getName()).log(Level.SEVERE, null, ex);
        }
    }                                            

    private void btn_ProximoActionPerformed(java.awt.event.ActionEvent evt) {                                            
        try {
            if (!conexao.resultset.isLast()) {
                conexao.resultset.next();
                mostrarDados();
            txt_Codigo.setEnabled(false);
                mostrarDadosPrecos();
            }
        } catch (SQLException ex) {
            Logger.getLogger(CadastrarProdutos.class.getName()).log(Level.SEVERE, null, ex);
        }
    }                                           

    private void btn_UltimoActionPerformed(java.awt.event.ActionEvent evt) {                                           
        try {
            conexao.select("SELECT * FROM tb01");
            conexao.resultset.last();
            mostrarDados();
            txt_Codigo.setEnabled(false);
            mostrarDadosPrecos();
        } catch (SQLException ex) {
            Logger.getLogger(CadastrarProdutos.class.getName()).log(Level.SEVERE, null, ex);
        }
        
    }

Se eu clico no primeiro registro e depois em proximo, da o seguinte erro:

30/11/2010 21:37:14 Cadastros.CadastrarProdutos mostrarDados SEVERE: null java.sql.SQLException: After end 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:842) at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5657) at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5577) at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5617) at Cadastros.CadastrarProdutos.mostrarDados(CadastrarProdutos.java:1676) at Cadastros.CadastrarProdutos.btn_ProximoActionPerformed(CadastrarProdutos.java:1336) at Cadastros.CadastrarProdutos.access$1400(CadastrarProdutos.java:33) at Cadastros.CadastrarProdutos$18.actionPerformed(CadastrarProdutos.java:964) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272) at java.awt.Component.processMouseEvent(Component.java:6038) at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) at java.awt.Component.processEvent(Component.java:5803) at java.awt.Container.processEvent(Container.java:2058) at java.awt.Component.dispatchEventImpl(Component.java:4410) at java.awt.Container.dispatchEventImpl(Container.java:2116) at java.awt.Component.dispatchEvent(Component.java:4240) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916) at java.awt.Container.dispatchEventImpl(Container.java:2102) at java.awt.Window.dispatchEventImpl(Window.java:2429) at java.awt.Component.dispatchEvent(Component.java:4240) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160) at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

e se eu clico no ultimo e depois clico em voltar, da o seguinte erro:

30/11/2010 21:37:56 Cadastros.CadastrarProdutos mostrarDados SEVERE: null java.sql.SQLException: Column 'descricaoProduto' not found. 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.findColumn(ResultSetImpl.java:1145) at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5617) at Cadastros.CadastrarProdutos.mostrarDados(CadastrarProdutos.java:1677) at Cadastros.CadastrarProdutos.btn_AnteriorActionPerformed(CadastrarProdutos.java:1323) at Cadastros.CadastrarProdutos.access$1300(CadastrarProdutos.java:33) at Cadastros.CadastrarProdutos$17.actionPerformed(CadastrarProdutos.java:954) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272) at java.awt.Component.processMouseEvent(Component.java:6038) at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) at java.awt.Component.processEvent(Component.java:5803) at java.awt.Container.processEvent(Container.java:2058) at java.awt.Component.dispatchEventImpl(Component.java:4410) at java.awt.Container.dispatchEventImpl(Container.java:2116) at java.awt.Component.dispatchEvent(Component.java:4240) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916) at java.awt.Container.dispatchEventImpl(Container.java:2102) at java.awt.Window.dispatchEventImpl(Window.java:2429) at java.awt.Component.dispatchEvent(Component.java:4240) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160) at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

O primeiro e ultimo funciona normal, mas o botao anterior e proximo nao, nao sei o que estou fazendo de errado.

Se alguem me ajudar, ficaria grato.

Abraços

4 Respostas

Anime

Oi blackfalcon,

Deu uma olhada rapida e a unica coisa que percebi de diferente é a falta do select.

Queops82

vc não esta fazendo a consulta nos botões próximo e voltar ai quando você clica neles você manda ele realizar o salto pra outro resultado mais não existe resultado no momento já que vc fez a consulta retornou os valores que buscou e fechou a conexão com o banco

blackfalcon

Sabe o que é, no metodo mostrarDadosPrecos() eu estou dando um select, e isso esta sendo depois do mostraDados, ou seja, o resultset muda, por isso nao estou conseguindo rsrs

Tipo, pelo que pensei é isso, na hora que eu chegar em casa a noite irei ver.

Obrigado pela ajuda galera.

Abraços

D

Vc poderia fazer da seguinte forma, dar o select no banco e retornar uma List com todos os registros, então é só vc ir andando na List.

Criado 30 de novembro de 2010
Ultima resposta 1 de dez. de 2010
Respostas 4
Participantes 4