sql - 搜索具有层次结构的 DBMS

标签 sql database rdbms hierarchical-data hierarchical-query

是否有任何开源分层数据库或现有 RDBMS 之上的模拟?

我正在搜索一个 DMBS(或现有 RDBMS 的插件),它可以存储分层数据并允许对分层数据执行查询(例如“SELECT LEVEL ... CONNECT BY ...”、“SELECT PARENT ... “例如)。我知道 Oracle 有一些支持,但是有更复杂的解决方案吗?

最佳答案

没有一个标准化的插件可以做到这一点。我已经看了不止一次了然而,有很多选择。请参阅我之前关于同一主题的问题:

What are the options for storing hierarchical data in a relational database?

简而言之,如果您使用具有 ID 和 ParentID(也称为邻接列表)的表,则您可以在大多数数据库中使用通用表表达式(Oracle 的 CONNECT BY 是最显着的异常(exception)之一)。 OTO,诸如物化路径或嵌套集之类的东西可能更适合您的情况 - 例如能够轻松找到“谱系”,其中使用邻接列表这是一项昂贵的操作。

通常,需要广泛处理分层数据的系统(例如 CMS)最终会发生的情况是,它会实现多个解决方案。假设读取远远超过写入。

关于sql - 搜索具有层次结构的 DBMS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4459776/

相关文章:

java - JPA/Hibernate 中的单独表与额外列

mysql - 将 'b' 文字放在非位值之前时如何处理 MySQL WorkBench bit(1) 错误?

mysql - RDBMS 通过应用程序安装自行设置

sql - 如何将SQL查询的结果保存到VBA中的变量中?

database - 这是对数据库规范化的一次很好的尝试吗?

sql - 创建返回表大小的函数

c# - 将数据集转换为整数

mysql - 显示学生人数最多的院系名称

c# - 为什么 SqlClient 在传递 SqlXml 时使用不必要的 XML 转换?

SQL Server 2005 无法绑定(bind)多部分标识符 "x"