据库:SqlServer2000
:tree
表结构
asp/asp.net中遍历树型结构.<%@ Language = VBScript%>
asp/asp.net中遍历树型结构.
<%Option Explicit%>
asp/asp.net中遍历树型结构.
<%
asp/asp.net中遍历树型结构.
Dim oConn, sSql
asp/asp.net中遍历树型结构.
Call DBConnBegin()
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
Dim sTableName
asp/asp.net中遍历树型结构.
Dim nCurrent, nLen, aTree() 
asp/asp.net中遍历树型结构.sTableName 
= "tree"
asp/asp.net中遍历树型结构.nCurrent 
= 1
asp/asp.net中遍历树型结构.nLen 
= GetRescordCount()
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
ReDim aTree(nLen)
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
Call GetPowerName(0)
asp/asp.net中遍历树型结构.
'Dim i
asp/asp.net中遍历树型结构.'
For i = 1 To nLen
asp/asp.net中遍历树型结构.
    'Response.Write aTree(i) & "<br>"
asp/asp.net中遍历树型结构.'
Next
asp/asp.net中遍历树型结构.
Call DBConnEnd()
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
Function  GetRescordCount()
asp/asp.net中遍历树型结构.    GetRescordCount 
= oConn.Execute("select count(id) from " & sTableName)(0)
asp/asp.net中遍历树型结构.
End Function
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
Sub GetPowerName(s_Id)
asp/asp.net中遍历树型结构.    
Dim n_ParentId, j, oRs
asp/asp.net中遍历树型结构.    
Set oRs = Server.CreateObject( "ADODB.Recordset" )
asp/asp.net中遍历树型结构.    sSql 
= "select id,PowerName,Layer from " & sTableName & " where ParentId=" & s_Id
asp/asp.net中遍历树型结构.    oRs.Open sSql, oConn, 
01
asp/asp.net中遍历树型结构.    
Do While Not oRs.Eof
asp/asp.net中遍历树型结构.        
For j = 1 To oRs("Layer")
asp/asp.net中遍历树型结构.            response.write 
"&nbsp;&nbsp;&nbsp;&nbsp;"
asp/asp.net中遍历树型结构.        
Next
asp/asp.net中遍历树型结构.        aTree(nCurrent) 
= oRs("PowerName")
asp/asp.net中遍历树型结构.        response.write aTree(nCurrent) 
& "<br>"
asp/asp.net中遍历树型结构.        nCurrent 
= nCurrent + 1
asp/asp.net中遍历树型结构.        n_ParentId 
= oRs("id")
asp/asp.net中遍历树型结构.        
Call GetPowerName(n_ParentId)
asp/asp.net中遍历树型结构.        oRs.MoveNext
asp/asp.net中遍历树型结构.    
Loop
asp/asp.net中遍历树型结构.    oRs.Close
asp/asp.net中遍历树型结构.    
Set oRs = Nothing
asp/asp.net中遍历树型结构.
End Sub
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
Sub DBConnBegin()
asp/asp.net中遍历树型结构.    
' 如果数据库对象已打开,不要再打开
asp/asp.net中遍历树型结构.
    If IsObject(oConn) = True Then Exit Sub
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.    
' 你可以不需要打开数据库连接对象而直接打开记录集对象,但如果你需要打开多个记录集对象的话,效率是很低的。
asp/asp.net中遍历树型结构.
    ' 如果你不创建一个数据库连接对象,ADO会在每个记录集打开时自动创建一个新的数据库连接对象,就算你用的是相同的SQL语句。
asp/asp.net中遍历树型结构.
    Set oConn = Server.CreateObject("ADODB.Connection")
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.    
On Error Resume Next
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.    
'Provider=SQLOLEDB.1;Server=(local);Initial Catalog =cx_soft;Integrated Security=SSPI;
asp/asp.net中遍历树型结构.
    'Provider=SQLOLEDB.1;Server=(local);Initial Catalog =cx_soft;Trusted_Connection=yes;
asp/asp.net中遍历树型结构.
    oConn.Open "Provider=sqloledb.1;Data Source=(local);Initial Catalog=AspNetTest;User Id=sa;Password=;"
asp/asp.net中遍历树型结构.    
asp/asp.net中遍历树型结构.    
If Err.Number > 0 Then
asp/asp.net中遍历树型结构.        
' 完全地退出正在运行的脚本
asp/asp.net中遍历树型结构.
        Response.End
asp/asp.net中遍历树型结构.    
End If
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.    
' 创建一个记录集
asp/asp.net中遍历树型结构.
    
asp/asp.net中遍历树型结构.
End Sub
asp/asp.net中遍历树型结构.
asp/asp.net中遍历树型结构.
Sub DBConnEnd()
asp/asp.net中遍历树型结构.    
On Error Resume Next
asp/asp.net中遍历树型结构.    oRs.Close
asp/asp.net中遍历树型结构.    
Set oRs = Nothing
asp/asp.net中遍历树型结构.    oConn.Close
asp/asp.net中遍历树型结构.    
Set oConn = Nothing
asp/asp.net中遍历树型结构.
End Sub
asp/asp.net中遍历树型结构.%
>

相关文章: