关于递归中的问题
表名:tbtest
id parid
10001 10000
10002 10000
10003 10001
10004 10001
10005 10004
10006 10004
10007 10006
10008 10006
10009 10006
10010 10004
10011 10004
10012 10000
10013 10012
10014 10013
10015 10013
10016 10013
id=10000
function tree(id)
set rs=new adodb.recordset
sql="select * from tbtset where parid=" & id
rs.open sql,cn,1,1
while not rs.eof
call tree(rs("id"))
rs.movenext
wend
end function
当做到id=10001,再调用call tree(10001)来但到 parid=10001的记录时
程序会再次调用tree(id)这个function 并且会建rs对象,当循环结束后,rs.eof=true
跳出回到上一循环继续执行时报错,提示rs已经为eof,可是我在做select * from tbtset where parid=10000时才下移了一条记录啊,只递归调用的tree(id)中的rs到底了啊,此程序在ASP中是正常的,但在VB中就报上面的错,不知道是什么原因,请高手指点一下。
id parid
10001 10000
10002 10000
10003 10001
10004 10001
10005 10004
10006 10004
10007 10006
10008 10006
10009 10006
10010 10004
10011 10004
10012 10000
10013 10012
10014 10013
10015 10013
10016 10013
id=10000
function tree(id)
set rs=new adodb.recordset
sql="select * from tbtset where parid=" & id
rs.open sql,cn,1,1
while not rs.eof
call tree(rs("id"))
rs.movenext
wend
end function
当做到id=10001,再调用call tree(10001)来但到 parid=10001的记录时
程序会再次调用tree(id)这个function 并且会建rs对象,当循环结束后,rs.eof=true
跳出回到上一循环继续执行时报错,提示rs已经为eof,可是我在做select * from tbtset where parid=10000时才下移了一条记录啊,只递归调用的tree(id)中的rs到底了啊,此程序在ASP中是正常的,但在VB中就报上面的错,不知道是什么原因,请高手指点一下。
...全文
相关推荐
C语言迷宫问题递归和非递归求解
在C语言中,迷宫问题是一个经典的问题,它涉及到路径搜索和图遍历等概念,主要与数据结构中的图和树相关。这个问题通常用于展示递归和非递归算法的应用,这两种方法各有优缺点,适合不同的场景。
用递归与非递归求解迷宫问题
在计算机科学领域,迷宫问题是一个经典的问题,它涉及到图论、搜索算法和路径规划等概念。本实验主要探讨如何用递归与非递归的方法解决这类问题,这对于理解和掌握数据结构,特别是栈和队列的特性至关重要。
python基于递归解决背包问题详解
总结来说,Python中的递归可以优雅地解决背包问题,虽然在大规模数据面前可能效率不高,但它展现了递归在解决复杂问题时的简洁性和直观性。
java 递归问题文档
总结来说,递归是编程中的重要概念,理解和掌握递归对于提升编程能力非常有益。这个文档提供了一个良好的学习平台,帮助读者深入理解递归,并通过实践应用到实际问题中。
c++递归实现汉诺塔问题
问题抽象:将具体问题(如汉诺塔)转化为通用算法,这是计算机科学中的常见方法。5. 递归的优化:如何通过迭代或其他方法改进递归算法的效率。


数据库(包含打印,安装,报表)
