设计一个多级目录的论坛

liangjuan01 2005-03-25 05:01:07
2、 例如设计一个多级目录的论坛,它的版面是分级的,而且为了灵活扩展,这种分级是没有限制的,设计如下的Table:
CREATE TABLE [table1] (
[id] [int] IDENTITY (1, 1) NOT NULL ,
[name] [varchar] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[level] [varchar] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[parent_id] [int] NOT NULL
) ON [PRIMARY]
输入如下数据:
id Name Level Parent_id
1 英语学习 1 1
2 四六级学习 2 1
3 GRE 2 1
4 GRE作文 3 3
5 GRE词汇 3 3
6 GRE阅读 3 3
7 GRE填空 3 3
8 GRE作文互评 4 4
9 GRE作文提纲 4 4
10 TOEFL 2 1
11 TOEFL作文 3 10
12 TOEFL听力 3 10
13 TOEFL阅读 3 10
14 TOEFL语法 3 10
15 体育 1 15
16 足球 2 15
17 中国足球 3 16
18 世界足球 3 16
19 篮球 2 15
20 CBA 3 19
21 NBA 3 19
其中顶级目录的上级目录id就是它自己的目录id
创建一存储过程来读取某目录的所有上级目录(输入参数为任一级的目录名称,输出为该目录的按级别从高到低的目录名称,例如:输入:NBA
输出:体育
篮球)
...全文
76 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyb0026 2005-03-25
  • 打赏
  • 举报
回复
给你个参考
表结构和你差不多 @cid 就是你的 Id

CREATE FUNCTION dbo.Fun_BBSNavigation (@cid int,@tid int)
RETURNS nvarchar (4000) AS
BEGIN

DECLARE @Htmlstr nvarchar (4000)
SELECT @Htmlstr=dbo.Fun_BBSFNavigation(@cid)
if(@tid<0)or (@tid>0)
select @Htmlstr=@Htmlstr+'<a href=BBSTOPIC.aspx?ID='+cast(@cid as nvarchar)+'>'+Title+'</a> →'
FROM dbo.BBS_FORUM
WHERE ID=@cid


RETURN @Htmlstr

END

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧