Nao consigo pegar o valor do sql count [resolvido]

4 respostas
alisson027
private void BtnPesquisarActionPerformed(java.awt.event.ActionEvent evt) {                                             
                    

          try {    
           Class.forName("com.mysql.jdbc.Driver");    
           Connection conn = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/bdprojeto", "root","admin");             
           String pesq= jTextField1.getText();
              String t="N";
          PreparedStatement stm = (PreparedStatement) conn.prepareStatement("select nome,telefone,count(nome)from pessoa where nome='"+pesq+"' and tipo='"+t+"'");  

          stm.executeQuery(); 
           ResultSet rs = stm.getResultSet();
           System.out.print(rs.getInt("count(nome)"));
           
         for(int cont=0;cont<rs.getInt("count(nome)");cont++){
             
  while(rs.next()){
    
        
            jTable3.setValueAt(rs.getString("nome"),cont,2);
            jTable3.setValueAt(rs.getString("telefone"),cont,1);
       
}

}


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

pelos testes q eu fiz aqui acho q é o rs.getInt("count(nome)) que é problema
só nao sei como resolver
da uma força ai

4 Respostas

drsmachado

Dê um alias ao count

count(name) as CONTAGEM

Quando você faz uma consulta SQL, praticamente todos os campos podem ser “apelidados” com aquela palavra mágica AS.

alisson027

mudei mas continua com o mesmo erro

17/06/2011 17:40:54 projeto.ProjetoView BtnPesquisarActionPerformed

GRAVE: null

java.sql.SQLException: Before start of result set

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)

at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)

at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5650)

at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5570)

at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5610)

at projeto.ProjetoView.BtnPesquisarActionPerformed(ProjetoView.java:761)

at projeto.ProjetoView.access$1600(ProjetoView.java:31)

at projeto.ProjetoView$12.actionPerformed(ProjetoView.java:486)

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.Component.processMouseEvent(Component.java:6288)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)

at java.awt.Component.processEvent(Component.java:6053)

at java.awt.Container.processEvent(Container.java:2041)

at java.awt.Component.dispatchEventImpl(Component.java:4651)

at java.awt.Container.dispatchEventImpl(Container.java:2099)

at java.awt.Component.dispatchEvent(Component.java:4481)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)

at java.awt.Container.dispatchEventImpl(Container.java:2085)

at java.awt.Window.dispatchEventImpl(Window.java:2478)

at java.awt.Component.dispatchEvent(Component.java:4481)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)

at java.awt.EventQueue.access$000(EventQueue.java:84)

at java.awt.EventQueue$1.run(EventQueue.java:602)

at java.awt.EventQueue$1.run(EventQueue.java:600)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)

at java.awt.EventQueue$2.run(EventQueue.java:616)

at java.awt.EventQueue$2.run(EventQueue.java:614)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
drsmachado

Estas duas linhas precisam estar DENTRO do while(rs.next())

System.out.print(rs.getInt("count(nome)"));  
             
         for(int cont=0;cont<rs.getInt("count(nome)");cont++){
alisson027

agora funcionou
acredita que eu tava des das 11 travado nisso,tentei de 1000 maneiras diferentes
cabeça ta explodindo aki haushusa
vlw mesmo abraço

Criado 17 de junho de 2011
Ultima resposta 17 de jun. de 2011
Respostas 4
Participantes 2