[問題] 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