一个数型数据库表如何得到相应的list!!!!

yeshucheng 个体 技术总监/研发总监  2006-10-13 11:24:43
CREATE TABLE item
(
id int8 NOT NULL,
parentid int8 NOT NULL,
title varchar(50),
icon varchar(200),
CONSTRAINT pk_item PRIMARY KEY (id)
);

CREATE TABLE forward
(
id int8 NOT NULL,
parentid int8 NOT NULL,
title varchar(50),
href varchar(50),
linktype varchar(50),
target varchar(50),
CONSTRAINT pk_forward PRIMARY KEY (id)
) ;

----item节点
ALTER TABLE item
ADD CONSTRAINT fk_item FOREIGN KEY (parentid)
REFERENCES item (id)
ON UPDATE RESTRICT ON DELETE RESTRICT;

----forward链接
ALTER TABLE forward
ADD CONSTRAINT fk_forward FOREIGN KEY (parentid)
REFERENCES item (id)
ON UPDATE RESTRICT ON DELETE RESTRICT;

说明:这里面存在:item是个对象,然后它包含forward一个对象
然后再把他们封装到一个大的对象中,所以这就存在一个怎么查找和构造的问题!!
...全文
129 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yeshucheng 2006-10-16
我的帖子不能就这么沉吧?:)
回复
白发程序猿 2006-10-13
不知道你到底想要什么?是写一个SQL得到一个树型结构,还是别的什么东东
回复
小辉 2006-10-13
没看明白 呵呵
回复
yeshucheng 2006-10-13
我的意思就是怎么通过sql语句来得到对象的构造!
回复
yeshucheng 2006-10-13
比如表item中的数据是:
id parentid title icon
1 1 数据中心 null
2 2 系统管理 null
101 1 字典维护 null
201 2 资源 null
20103 201 人员管理 null
注名:parentid是指向id的以表明它当前是属于谁的子节点

forward表的数据如下:
id parentid title href linktype target
102 1 开源网站 zdwh/ksjb/Index url basefrm
10101 101 考试地点 zdwh/ksdd/Inde page basefrm
10102 101 考试级别 zdwh/ksjb/Index page basefrm
20101 201 电脑 zdwh/ksjb/Index page basefrm
20102 201 房产 zdwh/ksjb/Index page basefrm
注名:parentid是指向Item.id的以表明它当前是属于谁的子节点

Item表中的title表示第一级的数型菜单名称,item可以并列很多,item表其实就是整个xml表中的属性,然后forward表示已经到了最后一级别的菜单了也在xml中体现:
<Item id="" parentid="" title="" icon="">
<Forward id="" parentid="这里指向Item中的id"title=""href=""linktype=""target="">
</Forward>
</Item>
回复
发动态
发帖子
MySQL
创建于2007-09-28

5.4w+

社区成员

MySQL相关内容讨论专区
申请成为版主
社区公告
暂无公告