Java 结果集迭代同一行中的行

Java 结果集迭代同一行中的行,java,jdbc,resultset,Java,Jdbc,Resultset,好的,这可能没有多大意义,所以我将尝试用代码进行澄清,我得到了一个基本的结果集,如下所示:- ResultSet results = stmt.executeQuery(constants.execQueueSQL()); while (results.next()){ String val1 = results.getString("col 1"); String val2 = results.getString("col 2"); String val3 = re

好的,这可能没有多大意义,所以我将尝试用代码进行澄清,我得到了一个基本的结果集,如下所示:-

ResultSet results = stmt.executeQuery(constants.execQueueSQL());
while (results.next()){
    String val1 = results.getString("col 1");
    String val2 =  results.getString("col 2");
    String val3 = results.getString("col 3");
}
然后,我想用while循环来重复这个过程,如下所示:-

ResultSet results = stmt.executeQuery(constants.execQueueSQL());
while (results.next()){
    String val1 = results.getString("col 1");
    String val2 =  results.getString("col 2");
    String val3 = results.getString("col 3");
}
现在,当我在eclipse中调试这一点时,我可以看到在执行while行之前,currentRow在
结果中已经显示为1,并且当我步进while中的每一行时,currentRow计数增加了1


我知道我返回了4行,但当我开始检索第3列时,我已经用完了,并且所有后续值都是错误的,因为它们是从单独的行中获取的,这是为什么…?

Eclipse中是否有一个watch表达式调用
next()
有可能吗?您应该能够在调试器窗口中看到正在查看的表达式。如果不进行调试,它会工作吗?我会尝试一下,我想我可以在a中插入一个断点,然后运行到该点,看看值是否正确…我建议在获取值后为循环的每个迭代添加日志记录。尝试调用results.first()并改为使用基于脚的while。