代码改变世界

请问一个类别表设计的问题

2008-07-15 16:43  shaofeng  阅读(570)  评论(6编辑  收藏  举报
请问一个类别表设计的问题
有三种选择:
方法一:
优缺点:结点容易移动,但是查询需要递归影响性能
Id,ParentId,CatName
1 ,0       ,类别一
2 ,1       ,类别一
方法二
优缺点:方便查询,只需要一句select就可以做到(NodeCode like '0001%')
但是移动结点很不方便,需要大量的编码工作
NodeCode,ParentNode,CatName
0001    ,          ,类别一
00010001,0001      ,类别二
方法三
优缺点:移动结点时不需要改变文章里的结点id号,查询方便,但是移动结点没有第一个方法简单
Id,OrderCode,CatName
1 ,0001     ,类别一
2 ,00010001 ,类别二
哪种设计更好,为了查询某结点下内容方便,结点方便移动
希望得到一个折中方案,也期待大牛的更好的解决方案