[问题] ResultSet问题

楼主: wadechen (忙)   2016-06-22 16:50:20
请教一下各位前辈
原本前人写法如下
=========================================
if(false == rs.first()){
return null;
}
do{
//get info from resultset
}while(rs.next());
=========================================
这样的取法造成有时候会遗失 query 的最后一个结果
我索性改成以下方式就不会出现这问题了.
=========================================
if(!rs.isBeforeFirst()) return null;
while(rs.next()){
//get info from rs
}
=========================================
想请教的是第一种写法, 其实我看不太出来发生错误的原因是什么?
希望各位可以为我解惑, 万分感谢.
作者: Lordaeron (Terry)   2016-06-22 16:58:00
为何判断是否第一笔或未开始抓呢?一直next不就抓完了
作者: pico2k (风月)   2016-06-22 17:45:00
原本的程式,只要回传的笔数大于1,最后一笔永远抓不到
楼主: wadechen (忙)   2016-06-22 17:49:00
但有时候最后一笔会正常出现 怪怪
作者: pico2k (风月)   2016-06-22 18:13:00
如果在新增资料前,先执行查询,查询到的资料会漏新增那一笔
楼主: wadechen (忙)   2016-06-22 18:17:00
可是测试为读取固定的资料椰
作者: Lordaeron (Terry)   2016-06-22 20:11:00
哪不就很正常, 你抓时, 资料又未进去, 当然就没有啊不然呢?
作者: iFEELing (ing)   2016-06-23 03:32:00
新增资料"前"做查询 能查到新增的资料不就见鬼了...比较好奇用 while(rs.next()){get} 会有什么问题吗

Links booklink

Contact Us: admin [ a t ] ucptt.com