数据库存储 层次、树形结构 的标准做法
标准做法有3种:
1、最早的做法:节点id里包括完整路径(曾祖父id-爷id-父id-本id)
财务的会计科目编号就是这么做的
现在基本很少使用了
2、递归做法:父id,本id(更早、完整的关系提供递归才能得到)
目前比较普遍
好处是直观简单,增删方便
坏处是生成树需要递归
3、直接保存法:本id,根id,层次数,在根(子树)里的序号
好像没看到别人这么用的,我在自己的树形论坛离线阅读器里采用过
好处是避免了递归,生成树记录高效方便
坏处是增删节点,需要更新半个子树的节点记录
(曾发布在: http://bbs.csdn.net/topics/390248889#post-392670699 )
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。