作者wadechen (忙)
看板java
标题[问题] ResultSet问题
时间Wed Jun 22 16:50:20 2016
请教一下各位前辈
原本前人写法如下
=========================================
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
}
=========================================
想请教的是第一种写法, 其实我看不太出来发生错误的原因是什麽?
希望各位可以为我解惑, 万分感谢.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.34.163.209
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1466585423.A.B90.html
※ 编辑: wadechen (1.34.163.209), 06/22/2016 16:51:32
1F:→ Lordaeron: 为何判断是否第一笔或未开始抓呢?一直next不就抓完了 06/22 16:58
2F:→ pico2k: 原本的程式,只要回传的笔数大於1,最後一笔永远抓不到 06/22 17:45
3F:→ wadechen: 但有时候最後一笔会正常出现 怪怪 06/22 17:49
4F:→ pico2k: 如果在新增资料前,先执行查询,查询到的资料会漏新增那一笔 06/22 18:13
5F:→ wadechen: 可是测试为读取固定的资料椰 06/22 18:17
6F:→ Lordaeron: 哪不就很正常, 你抓时, 资料又未进去, 当然就没有啊 06/22 20:11
7F:→ Lordaeron: 不然呢? 06/22 20:11
8F:→ iFEELing: 新增资料"前"做查询 能查到新增的资料不就见鬼了... 06/23 03:32
9F:→ iFEELing: 比较好奇用 while(rs.next()){get} 会有什麽问题吗 06/23 03:34