为了账号安全,请及时绑定邮箱和手机立即绑定

关于ResultSet 结果集的问题

关于ResultSet 结果集的问题

月亮岛Superman 2017-08-10 16:26:17
ResultSet rs = stmt.executeQuery("select count(*) from article where pid = " + pid);    rs.next();    int count = rs.getInt(1); 代码已贴上,假设我想从数据库中取出  pid=1 的数据条数   当我成功执行ResultSet rs = stmt.executeQuery("select count(*) from article where pid = " + pid);之后   不就已经得到一个返回的结果集了吗?这里rs.next(); 的作用是什么?不懂为什么 没有 rs.next();会报错
查看完整描述

2 回答

已采纳
?
起个名都要想好久了

TA贡献2条经验 获得超0个赞

rs是一个结果集,查询出的记录是一个列表,初始时指针指向的是第一条记录之前的。因此第一次查询的时候如果没有rs.next()是取不到数据的。
此外如果数据库支持的话,rs.first()指向第一条记录,rs.last()指向最后一条记录。

查看完整回答
反对 回复 2017-08-10
?
qq_慕仔3216813

TA贡献2条经验 获得超0个赞

我回答错了  没看清楚

查看完整回答
反对 回复 2017-08-10
?
qq_9_20

TA贡献1条经验 获得超0个赞

返回数据是一个表,默认的指针在表头,rs.next() 指针下移

查看完整回答
反对 回复 2017-08-10
?
言曌博客liuyanzhao_com

TA贡献164条经验 获得超116个赞

SELECT COUNT(*) FROM `article ` WHERE pid =1

这条语句,最后返回的结果是什么你知道嘛?

是一个集合,还是一个整数?

查看完整回答
反对 回复 2017-08-10
  • 月亮岛Superman
    月亮岛Superman
    这条语句返回的应该是个结果集合吧? ResultSet取得的应该都是结果集吧 刚开始指针是在第一条记录之前 必须调用rs.next()才可以获取第一条记录 我这样理解有错误吗?
  • 月亮岛Superman
    月亮岛Superman
    这条语句返回的应该是个结果集合吧? ResultSet取得的应该都是结果集吧, 刚开始指针是在第一条记录之前, 必须调用rs.next()才可以获取第一条记录, 我这样理解有错误吗?
  • 2 回答
  • 0 关注
  • 2051 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信