不会难我用的数据库结构你可以参考一下 ID Level ParentID Memo 其他字段Select MaxLevel=Max(Level) ...首先获得 MaxLevel=Rs("MaxLevel")和 Total=Rs.RecordCount在客户端生成一个三维数组 Part(MaxLevel,LevelCount,Item) LevelCount 是这个结点在这一Level中的编号ReDim LevelCount(<%=MaxLevel%>) ReDim Part(<%=MaxLevel%>,<%=Total%>,4) <% t=0 Do Until re.EOF If not isNull(re("g_Bianhao")) Then Level=re("PartLevel") t=t+1 %> LevelCount(<%=Level%>)=LevelCount(<%=Level%>)+1 Part(<%=Level%>,LevelCount(<%=Level%>),1)=<%=re("ID")%> Part(<%=Level%>,LevelCount(<%=Level%>),2)=<%=re("PartParentID")%> Part(<%=Level%>,LevelCount(<%=Level%>),3)="<%=Trim(re("g_Kind"))%>" Part(<%=Level%>,LevelCount(<%=Level%>),4)=0 <% End If re.MoveNext Loop set re=nothing
我这里急用。数据库中的数据采用的是父子关系来连接的。
ID Level ParentID Memo 其他字段Select MaxLevel=Max(Level) ...首先获得 MaxLevel=Rs("MaxLevel")和 Total=Rs.RecordCount在客户端生成一个三维数组
Part(MaxLevel,LevelCount,Item)
LevelCount 是这个结点在这一Level中的编号ReDim LevelCount(<%=MaxLevel%>)
ReDim Part(<%=MaxLevel%>,<%=Total%>,4)
<%
t=0
Do Until re.EOF
If not isNull(re("g_Bianhao")) Then
Level=re("PartLevel")
t=t+1
%>
LevelCount(<%=Level%>)=LevelCount(<%=Level%>)+1
Part(<%=Level%>,LevelCount(<%=Level%>),1)=<%=re("ID")%>
Part(<%=Level%>,LevelCount(<%=Level%>),2)=<%=re("PartParentID")%>
Part(<%=Level%>,LevelCount(<%=Level%>),3)="<%=Trim(re("g_Kind"))%>"
Part(<%=Level%>,LevelCount(<%=Level%>),4)=0
<%
End If
re.MoveNext
Loop
set re=nothing