2 choyoungwill ChoYoungWill 于 2016.05.12 16:15 提问

ResulltSet 可不可多次遍历

rs=dbl.openResultSet(lvarListSql);
String keyStr = "";
while(rs.next()){
keyStr = rs.getInt("fkhcode")+",";
}

        然后再遍历一次
        while(rs.next()){
            if(){
            }

5个回答

yanggq1988
yanggq1988   2016.05.12 16:21

不行吧,第一次循环以后,ResultSet已经指向了最后了。

yanggq1988
yanggq1988 回复ChoYoungWill: 默认的ResultSet类型是TYPE_FORWARD_ONLY,只向前的游标,不允许指针回退;在定义时将默认的ResultSet类型里的TYPE_FORWARD_ONLY改成ResultSet.TYPE_SCROLL_INSENSITIVE就行了
一年多之前 回复
ChoYoungWill
ChoYoungWill 如果在加上rs.beforeFirst(); 回到第一条呢,这样可以吗?
一年多之前 回复
ChoYoungWill
ChoYoungWill   2016.05.12 16:22

如果在加上rs.beforeFirst(); 回到第一条呢,这样可以吗?

havedream_one
havedream_one   2016.05.12 16:28

不可以。参看可滚动的ResultSet类型。

http://soft-development.iteye.com/blog/1420323

smalldogli
smalldogli   2016.05.12 16:49

yanggq1988说的是对的,

yanggq1988 回复ChoYoungWill: 默认的ResultSet类型是TYPE_FORWARD_ONLY,只向前的游标,不允许指针回退;在定义时将默认的ResultSet类型里的TYPE_FORWARD_ONLY改成ResultSet.TYPE_SCROLL_INSENSITIVE就行了

要注意有点数据库不支持游标回滚,如sqllite、dbf等

CSDNXIAOD
CSDNXIAOD   2016.05.12 16:52

C++下遍历文件夹
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!