问题标签 [object-oriented-database]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
511 浏览

database - 为什么面向对象的数据库管理系统没有更受欢迎?

我的意思是,对于 EJB、LINQ2SQL、EF 等,我们正在尝试(至少在我看来)以某种方式映射 rdb,以便我们可以将实体用作对象。为什么 OODBMS 没有激增,因为它们应该消除我们今天面临的许多障碍,或者至少减轻负担?

我可能忽略了一些东西,但我认为缺乏 OODBMS 的主要原因是 DBmafia 坚持他们最擅长的事情。也许他们甚至试图阻止一些努力。

有人应该能够以能够说服我们大多数人的方式回答这个问题。

0 投票
1 回答
346 浏览

java - 如何更改 OO 数据库(如 DB4O)中的模式?

刚刚开始使用 DB4O 面向对象的数据库。

我对 SQL 非常熟悉,如果我升级应用程序并添加一个新字段,我只需进入 SQL 管理器,更改架构,并使用一些手动 SQL 初始化一个新字段。

像 DB4O 这样的面向对象数据库的流程是什么?是不是很相似?

0 投票
2 回答
1942 浏览

ruby - 是否有任何用于 Ruby 的对象数据库?

我似乎找不到任何 Ruby 的对象数据库(不要与面向文档相混淆,如 Coach 和 Mongo)。

是否存在或多或少成熟的 Ruby OODBMS?

谢谢。

0 投票
2 回答
566 浏览

ruby - 面向对象数据库理论

请推荐一些关于为动态语言实现面向对象的数据库的材料(对 Ruby 感兴趣)。

我意识到 OODB 没有良好的数学基础,但我能找到的信息仍然不足以让我开始研究新的 OODB。

谢谢。

0 投票
2 回答
226 浏览

java - @Unique 在带有 NeoDatis 的 DataNucleus 中没有任何影响

使用 JDO / DataNucleus / NeoDatis 数据存储

我将@Unique 添加到可持久对象的字段中,但是我可以创建多个违反唯一约束的对象。DataNucleus/NeoDatis 的文档建议支持唯一字段。

如果我使用相同的用户名将多个对象添加到数据库中,那么这样做没有问题。

0 投票
1 回答
225 浏览

java - Neodatis 对象 DB / DataNucleus - 如何定义索引?

如何使用 DataNucleus 下的 Neodatis 对象数据库定义我知道将要查询的字段?

据我了解,@Index 注释似乎仅适用于关系数据库的 ORM。

0 投票
1 回答
316 浏览

java - 删除父表记录时不删除子记录

我是 Hibernate 和 DBMS 的新手,遇到了一个问题。我有两张桌子。一是A,二是B。这两个表之间存在多对一关系。现在,在从表中删除一条记录时,A我不想从表中删除该记录B。我应该应用什么类型的级联策略。

请帮忙。

0 投票
4 回答
1614 浏览

android - 需要在 Android 设备上存储大量数据,考虑使用 OODB

我目前正在开发一个基于 Android 的项目。在不涉及许多细节的情况下,该软件将在定制的设备上运行。硬件永远不会改变,永远都是一样的。这是一个明确的优势:)

话虽如此,该项目要求我们在设备上存储负载和数据负载 - 在某些表中超过 3m 行。SQLite 对我们来说很好地处理了这么多行的扫描,当我们开始进行复杂的连接以带回我们需要的所有相关数据时,问题就出现了。我们已经考虑过对数据库进行非规范化,但担心这会将数据库推到可用范围之外。

我们正在研究使用面向对象的数据库,例如 db4o 或 NeoDatis。我们希望通过存储对象,我们可以摆脱行级别的关系并将它们存储在对象上(就像 OOP 一样)。问题是我们无法找到这些 ODB 在 Android 上运行和使用的任何与性能相关的基准(至少不是最近的)。

是否有人对 Android 上的 OODB 和/或存储和访问大量数据有任何经验?如果是这样,您可以提供的任何建议将不胜感激。

- 编辑

这是我们面临的问题的一个例子。它与我们的应用程序无关(我的保密协议说我不能发布任何具体内容),但这个例子很好地代表了这个问题。

想象一下,我们正在构建一个应用程序来监控在任何给定时间在新泽西收费公路上行驶的每一辆车。对于任何给定的汽车,我们需要跟踪汽车的品牌和型号、车内有多少人以及车内人员的人口统计数据。所以基本上你最终得到的数据看起来像 -

编号 | 颜色 | make_id | in_toll_lane | model_id

制作

编号 | 姓名

模型

编号 | 姓名 | make_id

car_person

编号 | 年龄 | 性别 | is_driver | car_id

收费车道

编号 | car_in_line | 理想的汽车线 | 理想的住户

这些数据会经常变化。它也将变得相当庞大,因为毫无疑问,在任何特定时间都有很多人沿着 NJ Pike 行驶。

有了这些数据,我们需要能够根据需要对任何在长矛上行驶的人进行快照。我们还需要能够拍摄所有正在开车的男性或收费公路上的所有女性的快照。我们还需要能够按年龄、性别、品牌、型号等进行搜索。

现在想象一下,我们需要根据车内人数、理想乘员人数、已经排队的汽车数量以及应该排队的理想汽车数量来确定每辆车应该进入哪个收费车道.

这是一个非常简单的例子,虽然很能代表我们的问题。

-- 结束编辑

提前致谢!

0 投票
1 回答
332 浏览

c# - 如何使用 C# 在 db4o 中排除持久对象中的属性?

因为“[Transient]”实际上并不适用于属性。现在我该怎么做?

0 投票
1 回答
930 浏览

php - 是否存在 PHP 原生的面向对象数据库,例如 C# 和 Java 中的 db4o?

如果您不想使用关系数据库...