vb关于rs.movenext的问题

首先我写了个过程取得了一个数据集rs,其中这rs有两条记录。然后我在另外一过程中,将rs赋值给另外一个recordeset比如rs1setrs1=rs此时rs1的数据集也... 首先我写了个过程取得了一个数据集rs,其中这rs有两条记录。
然后我在另外一过程中,将rs赋值给另外一个recordeset 比如rs1
set rs1=rs
此时rs1的数据集也是两条记录
然后我想将这个记录中files(0)的值加成treeview的父节点
Set nodx = TreeView1.Nodes.Add(, , , rs1.Fields(0), 1, 3)
这样会将第一条记录加入。
但是如果多条,甚至比2条更多时我们肯定用循环
于是我
for i =1 to rs1.recordecount(这个是2目前)
理论上要循环一次
Set nodx = TreeView1.Nodes.Add(, , , rs1.Fields(0), 1, 3)
rs1.movenext
next i
可是这样会报错,提示当数据集eof 或bof为真时或者....反正就是没数据了。
这就奇了怪了,我才添加一次数据集怎么就给空了,这是为什么,要改哪个地方吗
展开
 我来答
素吗运1523
2014-09-16 · 超过58用户采纳过TA的回答
知道答主
回答量:115
采纳率:0%
帮助的人:141万
展开全部
加个分页,rs会在每页指定的记录个数里面输出,其它的数据检索会留在点击下一页时执行,这样可以缓解rs一次读到底的慢效率
以上回答你满意么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zx001z7d53
2014-09-16 · TA获得超过2万个赞
知道大有可为答主
回答量:2.4万
采纳率:52%
帮助的人:5706万
展开全部
QUN号148317126 ,2000个人的,那里问问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
intehel
2014-09-16 · TA获得超过1293个赞
知道大有可为答主
回答量:1601
采纳率:100%
帮助的人:1775万
展开全部
你应该这样:
rs1.movefirst
do while not rs1.eof
Set nodx = TreeView1.Nodes.Add(, , , rs1.Fields(0), 1, 3)
rs1.movenext
loop
追问
我靠,你这样还真可以,但是我的想法和你没啥不同,为什么我那样写会报错,你这样就不会了,从逻辑上能简单解释一下吗?
追答

用for也可以

rs1.movefirst
for i =1 to rs1.recordecount-1    '需要减1,自己思考下
    Set nodx = TreeView1.Nodes.Add(, , , rs1.Fields(0), 1, 3)
    rs1.movenext
next
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式