无法从 ResultSet 获取值以填充 Java 中的 jLabel

Can't get value from ResultSet to populate jLabel in Java

我是编程新手,正在尝试将 sql 查询中的值分配给 jLabel。该程序编译并运行没有错误,但不会更改 jLabel。根据我的研究,这应该有效,但没有。数据库连接没问题。当我调试时,问题似乎出在以下行: 双 d = rs.getDouble(1); 这是我的代码:

String sum = "SELECT SUM(TOTAL) FROM PUNCHES WHERE EID = 1"; 

Statement st = con.createStatement();            
ResultSet rs = st.executeQuery(sum); //rs should have 1 row, 1 column

double d = rs.getDouble(1);
lblGrandTotal.setText(String.valueOf(d)); 

如果我用 12.345 等任意值代替 d,它就可以工作。

您忘记拨打rs.next()

ResultSet rs = st.executeQuery(sum); //rs should have 1 row, 1 column
if (rs.next())
{
    double d = rs.getDouble(1);
    ...
}
else
    // Failed to get result, do something useful here