com.microsoft.sqlserver.jdbc.SQLServerException:结果集没有当前行

我试图在结果集的第一行中获取第一列。 我知道我可以改变我的SQL查询来做到这一点。 但不是。 我想要全桌,我只想做我刚刚提到的。

注 – Winners是我的SQL查询中的别名列。

错误基本上是 –

com.microsoft.sqlserver.jdbc.SQLServerException: The result set has no current row. 

更多的错误 –

 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190) at com.microsoft.sqlserver.jdbc.SQLServerResultSet.verifyResultSetHasCurrentRow(SQLServerResultSet.java:483) at com.microsoft.sqlserver.jdbc.SQLServerResultSet.getterGetColumn(SQLServerResultSet.java:2047) at com.microsoft.sqlserver.jdbc.SQLServerResultSet.getValue(SQLServerResultSet.java:2082) at com.microsoft.sqlserver.jdbc.SQLServerResultSet.getValue(SQLServerResultSet.java:2067) at com.microsoft.sqlserver.jdbc.SQLServerResultSet.getString(SQLServerResultSet.java:2401) 

这是我到目前为止所尝试的,我需要你的帮助来解决它 –

 ResultSet rs = statement.executeQuery("get a whole table"); //pseudocode try{ rs.next(); numberOne = rs.getString("Winners"); rs.first(); } catch (SQLException e) { e.printStackTrace(); } 

结果集中可能没有任何内容。 使用

 if (rs.next()) { numberOne = rs.getString("Winners"); }