2014-03-12 50 views
0

我想计算一个MySQL表的列的总和并将结果放在JTextField上按钮单击。下面是计算为总和的方法:在点击按钮:在MySQL表中获取列的SUM并将其放入JTextField

private void computeTotalUnits(JTextField tf) { 
     try { 
      st = conn.createStatement(); 
      sql = "SELECT SUM(no_of_units) AS total_no_of_units FROM schedule;"; 

      rs = st.executeQuery(sql); 

      tf.setText(rs.getString(1)); 

     } catch(Exception ex) { 
      JOptionPane.showMessageDialog(null, ex.toString()); 
     } 
    } 

不过,我得到一个“结果集的开始前的SQLException”。

+0

你从哪里得到这个异常?在executeQuery函数或getString函数上? – ReeCube

+0

嗨,这是整个[StackTrace](http://pastebin.com/CQMw2gMe)。您的善意帮助将不胜感激。 – silver

+0

如果我没有完整的代码,StackTrace并不是非常有用,但是您可以调试您的项目,并在方法开始时暂停并查看一步一步发生的情况并告诉我们结果,或者您可以用abc或123插入System.out.println(“...”)以检查你的功能停止的位置 – ReeCube

回答

2

失踪rs.next()我想。见here。也可能是总和不是字符串。尝试获得BigDecimal

+0

你是对的。 'tf.setText(rs.getString(1));'必须在while(rs.next()){}'内。之后,它工作。标记为接受的答案。 – silver

相关问题