数据库中树形层级结构中怎么防止“环路”

数据库树形层级结构在实际应用中特别常见,比方说数据库中的分销系统。树形结构中一旦出现图形结构,那就意味着环路了,比方说A->B->C->D-E- H->I-J-K-L-B 这里就形成了环了。数据...

数据库树形层级结构在实际应用中特别常见,比方说数据库中的分销系统。树形结构中一旦出现图形结构,那就意味着环路了,比方说A->B->C->D->E-> H->I-J-K-L-B

这里就形成了环了。数据库查询的时候,如果是无限递归,会导致数据库崩溃,程序没有反应的问题。

向防止环路问题, 设置层级关系:level

表结果如下:

id,self_id,parent_id,child_id,create_time


1,树形表数据,应先初始化一条数据,账号是公司账号,self_id 账号id,parent_id,child_id 都是0

2,如果新插入的 self_id的level 一定要小于child_id 的 level,树形结构,上级的level一定要小于下级的,绑定后要更新level级别

3,通过child_id查询是否有上级【上级id不是根节点id】,如果有上级id,不允许绑定,提示此id已经绑定过。

4,通过child_id,查询是否由下级关联。在满足2,3两点后,这种情况不存在。

  • 发表于 2022-04-13 01:56
  • 阅读 ( 36 )

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
shitian
shitian

662 篇文章

作家榜 »

  1. shitian 662 文章
  2. 石天 437 文章
  3. 每天惠23 33 文章
  4. 小A 29 文章