1,对树形结构最直观的分析莫过于节点之间的继承关系上,通过显示地描述某一节点的父节点,从而能够建立二维的关系表,则这种方案的Tree表结构通常设计为:{Node_id,Parent_id}
2,在基于数据库的一般应用中,查询的需求总要大于删除和修改。为了避免对于树形结构查询时的“递归”过程,基于Tree的前序遍历设计一种全新的无递归查询、无限分组的左右值编码方案,来保存该树的数据。
{Catagory:"Food",FoodCategory:"Fruit",color:"Red",Name:"Cherry"}
{Catagory:"Food",FoodCategory:"Fruit",color:"Yellow",Name:"Banana"}
{Catagory:"Food",FoodCategory:"Meat",Name:"Beef"}
{Catagory:"Food",FoodCategory:"Meat",Name:"Pork"}
其实我觉得这种关系型数据库可以用MongoDb来存储(Json的数据格式),这样用非关系数据库的思想解决这个问题岂不是更好?这种可以不通过递归过程不断地访问数据库,每次数据库IO都会有时间开销;也避免了第二种节点的添加、删除及修改代价较大,将会涉及到表中多方面数据的改动。是不是萌萌哒?一家之言,欢迎拍砖!