java.sql. next()

elephone 2007-08-19 09:43:39
try
{
PreparedStatement psm=con.prepareStatement("select * from pubs where id=?");
psm.setString(1,jTextID.getText());
rs=psm.executeQuery();
rs.next();//为什么需要调用这个方法呢?
try
{
jTextID.setText(rs.getString(1));
jTextName.setText(rs.getString(2));
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
...全文
283 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
mysqlaping 2007-08-19
  • 打赏
  • 举报
回复
初始的结果集没有指向第一条记录的,必须调用next方法。
一般 if(rs.next()) or while(rs.next())
fox_for_cloud 2007-08-19
  • 打赏
  • 举报
回复
如lsj19830812(李逵)所说 游标初始位置是0 需要下移一个位置才能 指向结果集的第一条记录

如果在这里 没有移位的话 后面
jTextID.setText(rs.getString(1));
jTextName.setText(rs.getString(2));
就不能得到正确的结果

至于为什么会把游标初始化为0 而不是指向第一条记录 考虑一下当返回结果集是一个空集的情况就会很容易明白了
elephone 2007-08-19
  • 打赏
  • 举报
回复
为什么要移动呢
lsj19830812 2007-08-19
  • 打赏
  • 举报
回复
boolean next()
Moves the cursor down one row from its current position.
游标初始位置是0
下移一个位置到第一条记录

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧