【发布时间】:2008-11-18 19:46:56
【问题描述】:
当我调用这个函数时,一切正常,只要我不尝试再次递归调用该函数。换句话说,如果我取消注释该行:
GetChilds rsData("AcctID"), intLevel + 1
然后函数中断。
<%
Function GetChilds(ParentID, intLevel)
Set rsData= Server.CreateObject("ADODB.Recordset")
sSQL = "SELECT AcctID, ParentID FROM Accounts WHERE ParentID='" & ParentID &"'"
rsData.Open sSQL, conDB, adOpenKeyset, adLockOptimistic
If IsRSEmpty(rsData) Then
Response.Write("Empty")
Else
Do Until rsData.EOF
Response.Write rsData("AcctID") & "<br />"
'GetChilds rsData("AcctID"), intLevel + 1
rsData.MoveNext
Loop
End If
rsData.close: set rsData = nothing
End Function
Call GetChilds(1,0)
%>
*反馈后编辑
谢谢大家,
除了通常的错误:
Error Type: (0x80020009) Exception occurred.
我不确定是什么导致了这些问题。我知道这可能是由于几个因素。
- 不关闭连接并尝试重新打开同一连接。
- 到数据库的许多并发连接。
数据库内容如下:
AcctID | ParentID
1 Null
2 1
3 1
4 2
5 2
6 3
7 4
我的想法是,我可以拥有一个带有子帐户的主帐户,而这些子帐户可以拥有自己的子帐户。最终将有另一个父 ID 为 Null 的主帐户,该主帐户将拥有自己的子帐户。考虑到这一点,我是否以正确的方式进行此操作?
感谢您的快速回复。
谢谢大家,
除了通常的错误:
错误类型:(0x80020009)异常 发生了。
我不确定是什么导致了这些问题。我知道这可能是由于几个因素。
- 不关闭连接并尝试重新打开同一连接。
- 到数据库的许多并发连接。
数据库内容如下:
AcctID | ParentID
1 Null
2 1
3 1
4 2
5 2
6 3
7 4
我的想法是,我可以拥有一个带有子帐户的主帐户,而这些子帐户可以拥有自己的子帐户。最终将有另一个父 ID 为 Null 的主帐户,该主帐户将拥有自己的子帐户。考虑到这一点,我是否以正确的方式进行此操作?
感谢您的快速回复。
【问题讨论】:
-
您是否收到错误消息?
-
功能卡住还是返回错误?你检查过你的数据是否有循环吗?
标签: asp-classic vbscript ado