加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

java.sql.SQLException: After end of result set

发布时间:2020-12-12 02:17:15 所属栏目:MySql教程 来源:网络整理
导读:最近碰到一个问题:java.sql.SQLException: After end of result set。这个问题在网上也查过了,是因为你引用了多个结果集的时候,由于前一个结果集已经和数据库关闭,你又引用 ,那当然找到的结果为Null.单说会听得发懵,下面看一下这段程序吧: // 查找选

最近碰到一个问题:java.sql.SQLException: After end of result set。这个问题在网上也查过了,是因为你引用了多个结果集的时候,由于前一个结果集已经和数据库关闭,你又引用 ,那当然找到的结果为Null.单说会听得发懵,下面看一下这段程序吧:

// 查找选择的状态对应的id
sql1 = " select stateId from state where stateMessage = '"
+ stateBean.getStateMessage() + "' ";
ResultSet rs1 = con.executeQuery(sql1);
try {
while (rs1.next()) {
stateId = String.valueOf(rs1.getInt(1));
}
} catch (SQLException e) {
e.printStackTrace();
}
// 查找选择的管理员对应的id
sql2 = " select adminId from admin where adminRealName = '"
+ adminBean.getAdminRealName() + "' ";
ResultSet rs2 = con.executeQuery(sql2);
try {
while (rs2.next()) {
adminId = String.valueOf(rs1.getInt(1));
}
} catch (SQLException e) {
e.printStackTrace();
}

不知道大家是否已经注意到第18行的错误,adminId = String.valueOf(rs.getInt(1));本来是需要引用rs2的结果集的,但却引用了上面已经关闭过的rs1的结果集。所以出现java.sql.SQLException: After end of result set这样的错误,就一个很小的细节问题,但如果不细心的话,那将可能弄很久。当然,弄错一次了也是一个好事,也算是积累了经验,印象也加深了。希望大家下次不要出现这样的小问题哦。

注: executeQuery()方法是我已经封装好的。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读