[发明专利]基于普通数据库的树型结构表的存储与查询技术在审
申请号: | 201410743923.6 | 申请日: | 2014-12-09 |
公开(公告)号: | CN104598517A | 公开(公告)日: | 2015-05-06 |
发明(设计)人: | 张震 | 申请(专利权)人: | 北京网梯科技发展有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 无 | 代理人: | 无 |
地址: | 100098 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 普通 数据库 结构 存储 查询 技术 | ||
技术领域
本发明涉及一种适用于普通数据库的有关树型结构数据表的节点数据的存储与查询方法及系统。属于信息技术领域。
背景技术
随着信息技术的发展,计算机网络中带数据库的信息技术应用到了各行各业,由于数据的复杂性,很多数据库中的数据采用树型结构数据表进行存储与查询,而在某些情况下,当树型结构数据量大,层级较深时,对数据库中的数据检索的效率就很难得到保证。现有技术中,很多数据库系统都是从业务上进行控制,如采用固定数的深度或一次性只查询出一级节点,而不是所有子节点,一般的获取所有子节点都是使用递归的算法,当层级较深时,系统中将占用较多的资源,或者计算机系统没有足够的内存将无法计算获取所有子节点。而本发明就是基于对有关树型结构数据的存储进行优化,把树型结构变为扁平结构,从而提高节点的检索效率。
发明内容
本发明的目的是解决普通数据库下检索树形结构数据表中的节点的效率问题。本发明的技术方案如下:
一种数据库中快速查询节点的方法,包括步骤:
1)在数据库中预先存储树型结构数据表,所述树型结构数据表中包括多个节点,每个节点包含左边界字段,右边界字段,父节点id和节点id字段四个属性;其中,每个节点的左边界值小于右边界值;且左、右边界值均为正整数;
2)为树型结构数据表的左、右边界以及父节点添加索引。
3)设置与树型结构数据表相关的插入触发器、删除触发器、修改触发器;所述插入触发器、删除触发器、修改触发器分别用于向树型结构数据表中插入节点,删除节点,修改节点;
4)当需要查询某节点的所有子节点时,在树型结构数据表中检索左、右边界值在待查询节点的左、右边界值之间的所有节点,并记录所检索到的节点id,所述id对应的节点即待查询节点的子节点;
5)当需要查找某节点的所有父节点时,只需要在树型结构数据表中筛选出左、右边界值范围包括待查找节点的左、右边界值的所有节点即可。
本申请中还公开了一种快速查询节点的系统,具体包括以下模块:
树型结构数据表存储模块,用于在数据库中预先存储树型结构数据表,所述树型结构数据表中包括多个节点,每个节点包含左边界字段,右边界字段,父节点id和节点id字段四个属性;其中,每个节点的左边界值小于右边界值;且左、右边界值均为正整数;
索引模块,用于为树型结构数据表的左、右边界以及父节点添加索引。
设置模块,用于设置与树型结构数据表相关的插入触发器、删除触发器、修改触发器;所述插入触发器、删除触发器、修改触发器分别用于向树型结构数据表中插入节点,删除节点,修改节点;
子节点查询模块,用于当需要查询某节点的所有子节点时,在树型结构数据表中检索左、右边界值在待查询节点的左、右边界值之间的所有节点,并记录所检索到的节点id,所述id对应的节点即待查询节点的子节点;
父节点查询模块,用于当需要查找某节点的所有父节点时,只需要在树型结构数据表中筛选出左、右边界值范围包括待查找节点的左、右边界值的所有节点即可。
本发明通过对有关树型结构数据表的节点数据的存储、插入、删除及修改进行优化,在节点中增加左边界字段及右边界字段,把树型结构变为扁平结构,从而提高检索节点效率。
附图说明
图1为节点模型图;
图2为节点添加图;
图3为节点删除图;
图4为节点位置修改图;
图5为节点查询图。
具体实施方式
为解决数据库中树型结构数据表中对节点的检索查询效率问题,本发明对计算机网络系统普通数据库中树型结构数据表中节点数据的存储与查询方法进行了优化,具体实施方式如下:
在数据库系统中设定节点的存储方式,为每个节点添加两个属性,即左边界与右边界,该两个属性值分别对应一个正整数,且左边界值小于右边界值。添加属性值后,树型结构对应的节点的属性通常包含四种重要元素,节点ID,父节点ID,左边界与右边界,具体参见图1。
本申请中快速查询节点的具体实施步骤如下:
1. 在数据库中预先存储树型结构数据表,所述树型结构数据表中包括多个节点,每个节点包含左边界字段,右边界字段,父节点id和节点id字段四个属性;
2. 为树型结构数据表的左、右边界以及父节点添加索引。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京网梯科技发展有限公司;,未经北京网梯科技发展有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410743923.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:处理用户行为数据的方法和装置
- 下一篇:一种事件触发词识别方法及装置