?? 不用遞歸實(shí)現(xiàn)樹形結(jié)構(gòu)的一種方法.txt
字號(hào):
不用遞歸實(shí)現(xiàn)樹形結(jié)構(gòu)的一種方法
--------------------------------------------------------------------------------
【SunADM】 于 2000-07-26 13:26:33 加貼在 Joy ASP ↑:
不用遞歸實(shí)現(xiàn)樹形結(jié)構(gòu)的一種方法
主要的技巧在Level(帖子回復(fù)深度)的操作上
SunADM 于 2000.07.26
____________________________________________
演示表的結(jié)構(gòu)
____________________________________________
表名:BBS
字段
數(shù)據(jù)類型
說明
ID 自動(dòng)編號(hào)
RootID Int 根帖ID,本身為根帖則RootID = ID
FID Int 父帖ID,上一層帖子的ID,如是根帖則FID = NULL
Level SmallInt 根帖Level=0,其他依據(jù)回復(fù)的深度遞增
Subject Char 主題
____________________________________________
SQL 語句(須據(jù)此創(chuàng)建記錄集 rs):
____________________________________________
SELECT *
FROM BBS
ORDER BY BBS.RootID DESC, BBS.Level, BBS.FID, BBS.[ID] DESC
____________________________________________
顯示樹形結(jié)構(gòu)的有關(guān)語句:
____________________________________________
Level = 0
Response.Write "<ul>"
While NOT rs.EOF
If rs("Level") < level Then
For i = 1 To Level-1
Response.Write "</ul>"
Next
End If
If rs("Level") > level Then
Response.Write "<ul>"
End If
Response.Write "<li>" & rs("Subject") & "</li>"
level = rs("Level")
rs.MoveNext
Wend
Response.Write "</ul>"
__________________________________________________________
后記:原來我一直用遞歸做這事,因?yàn)橛X得主要的速度瓶頸該是在
分頁上面,所以一直……呵呵!直到今天廖家遠(yuǎn)當(dāng)頭棒喝……
希望對(duì)大家有所幫助(扔幾塊玉過來吧!準(zhǔn)備好了幾個(gè)麻袋等著那!:P)
Last Modified 2K-07-26 13:14
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -