论坛首页 综合技术论坛

复杂商品分类的表如何建立?

浏览 31679 次
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-10-13  
在那个子表的思路中,如果觉得子表多不爽,可以用object type代替子表,object type又会很多,但是会比表灵活些。关键是楼主给定的场景中,数据本身足够复杂,不管是用XML文件、XML DB、RDB存储复杂程度似乎都相似。“无限级分类算法”都不太现实。目前想到的就是结合配置文件、DBA及相应算法来实现无限级分类。

这个场景中,我肯定会推荐要用上RDBMS,不管是table、object table、xml type table,很大的一个好处是不用操心很多管理、性能问题。有那么复杂的分类,商品相关的基础表肯定也足够复杂,RDBMS管起来省心。

关于纯XML思路,听听winterwolf、布老大们的意见吧。
0 请登录后投票
   发表时间:2006-10-13  

扩展属性问题:
从存储角度看,简单的方式是用一个字段文本,格式可以是xml或是自定义的可解析结构。
全文检索:
所有信息生成一个文本,对这个文本进行索引就好了。
交叉分类问题:
用中间表维护many-to-many的关系
无限分级:
用一个parentId表示父就好了
0 请登录后投票
   发表时间:2006-10-16  
同意nihongye的说法,我们现在也是这样实现的。
定义了一个abstract的TreeClass,实现了父节点、子节点的遍历、上溯下溯、相互的关联关系等。

现在系统 中用到树形结构的地方主要有:组织机构分类、商品分类、国内地区分类、系统菜单、BBS主贴回贴等。

效果还不错。有时间我把实现方法和效果整理一下。
0 请登录后投票
   发表时间:2006-10-17  
扩展属性我现在是这么建立的
商品表:
商品ID
商品类型ID
商品名称

商品类型表:
商品类型ID
商品类型名称:如书籍,服装,主板等
商品类型属性表: 与商品的类型为1:n的关系
商品属性ID
商品类型ID
属性名称 如款式、风格等
属性选项 如果属性标志不为0 ,则以|分割开多个选项
属性标志 0:为文本框,1为下拉框,2为多选框


商品扩展属性表:与商品为1:n的关系。
商品ID
商品属性ID 比如款式的商品属性ID
商品属性值 比如款式为拉链夹克


大家再给点建议


关于无限级分类nested set确实是比较好的算法,但是需要存储过程以及视图支持,总归有点不爽。当然xml也是一种解决方案
全文检索并不麻烦,只要好好看文档
交叉分类其实就是一个M:N的关系,提问的时候可能脑袋里边打结了,郁闷

0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics