问题标签 [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 投票
6 回答
11664 浏览

database - 基于图的数据库和面向对象的数据库有什么区别?

基于图的数据库( http://neo4j.org/)和面向对象的数据库(http://www.db4o.com/ )有什么区别?

0 投票
2 回答
691 浏览

.net - 如何将 IronPython 中创建的对象存储到对象数据库中

我想使用对象数据库来持久化在 IronPython 中创建的一些类。该数据库是 .NET 2.0 的 db4o(今天下载)。代码如下所示:

我在db.Store(p1)

我怀疑问题出在 IronPython 及其类型系统上,因为该类Person不是标准的 .NET 类。我试图坚持System.IO.FileInfo,效果很好。如何在 IronPython 中存储作为类实例的对象?

0 投票
3 回答
2707 浏览

couchdb - 设计文档数据库架构

我徒劳地试图学习如何使用对象数据库。在数据库教科书中,传统似乎是使用跟踪学生、课程和班级的例子,因为它是如此熟悉和适用。这个示例作为对象数据库会是什么样子?关系数据库看起来像

您是否会将 StudentClasses 保留在 Classes 中,而 Classes 又保留在 Course 中,然后将 Student 保留为顶级实体?

0 投票
3 回答
4469 浏览

.net - 推荐一个好的db4o viewer

我正在玩 db4o,并且我有 Visual Studio 的对象管理器查看器。看起来不错,但与 HeidiSQL/SQL Studio/等工具不完全一致,更不用说它锁定了 db4o 文件——我不能同时使用我的 db4o 应用程序和对象管理器。

也许我用错了,但无论如何,我想知道还有什么。您会推荐哪些工具来查看和操作 db4o 文件?

更新:我一直在使用 LINQPad。有一些牦牛剃须,但效果很好。就 HeidiSQL/SQL Studio/等应用程序中可用的功能而言,它仍有很多不足之处,但这是一个开始。

0 投票
2 回答
1179 浏览

jdbc - 处理对象数据库(如 db4o)中的数据维护

对于使用像db4o这样的对象数据库,我一直觉得很困惑的一件事是,您应该如何处理通常由 SQL/PL-SQL 处理的复杂迁移。

例如,假设您在关系数据库中有一个名为 my_users 的表。最初您有一个名为“full_name”的列,现在您的软件处于 V2 中,您希望删除此列,将全名拆分为空白并将第一部分放在名为“first_name”的列中,第二部分放在列中名为姓氏。在 SQL 中,我将简单地填充“first_name”和“second_name”列,然后删除名为“full_name”的原始列。

我将如何在 db4o 之类的东西中做到这一点?我是否编写了一个 Java 程序,该程序通过脚本查找 User.class 的所有对象,在设置 first_name 和 last_name 时将 full_name 设置为 null?当我进行下一次 svn 提交时,将没有与 full_name 对应的字段/bean-property,这会是一个问题吗?似乎在我的“模式”发生更改的生产应用程序中使用它我想编写一个脚本来将数据从版本 x 迁移到版本 x+1,然后在版本 x+2 中实际删除我正在尝试的属性摆脱版本 x+1,因为我无法编写 Java 脚本来修改不再属于我的类型的属性。

似乎问题的一部分是RDBMS根据简单的不区分大小写的基于字符串的名称解析您所指的对象,在Java之类的语言中,打字比这更复杂,如果getter不能引用属性/setter/field 不是在运行时加载的类的成员,因此您基本上需要在同一个脚本中拥有 2 个版本的代码(嗯,自定义类加载器听起来很痛苦),存储您的类的新版本属于另一个包(听起来很乱),或者使用我提到的版本 x+1 x+2 策略(需要更多计划)。也许有一些我从未从 db4o 文档中收集到的明显解决方案。

有任何想法吗?希望这有点道理。

0 投票
2 回答
271 浏览

.net - .NET 项目:对象数据库的统一包装器

我正在考虑做一个项目,该项目将为.NET 的对象数据库(例如Caché、Objectivity)提供统一的API 和工具(导入/导出等)。

它将提供:

  • 从 CLR 类生成模式,
  • 从给定的 OODBMs 模式生成 C# 类,
  • 用于删除、创建和更新对象的 API,
  • Linq 提供商,
  • 使用 .NET 对象 (*) 从 .NET 调用数据库对象方法的 API,
  • 一些 OODBMs 提供某种 SQL 支持,因此 API 用于此,
  • 第一阶段的 Caché 和客观性提供商。

是否存在实施上述任何一项的项目?这可以通过 NHibernate 方言实现吗?还是 OODBM 与 RDBM 如此不同以至于值得为它们做单独的框架?

编辑:(*)我的意思是从应用程序调用 DB 方法(RDBM 世界中的存储过程)。在 OODBM 世界中,至少据我了解,对象可能具有方法,例如 C# 对象。我的想法是,您将使用属性 [DbCall] 左右标记方法并将主体留空,当您从 .NET 调用它时,框架实际上会调用给定对象上的数据库方法。

NHibernate 是为 RDBM 设计的,所以我想知道在使用 NHibernate 时可能无法利用的 OODBM 使用中是否存在任何差异(功能)。

0 投票
3 回答
2187 浏览

database - 面向对象的数据库是否比具有 ORM 的关系数据库更好?

只是认为具有 ORM 的关系数据库在许多方面与面向对象的数据库非常相似。我的经验仅在于带有 ORM 提示的 RDMS,因此在我看来,面向对象的数据库非常相似,但没有经验我不能肯定地说。

如果您使用过面向对象的数据库和 ORM,您可以比较它们吗?与 RBMS+ORM 相比,面向对象数据库的弱点是什么?

0 投票
4 回答
4417 浏览

database - db4o 和/或 Eloquera 数据库的真实体验

我正在为即将到来的项目评估两个对象数据库,db4o ( http://www.db4o.com ) 和 Eloquera 数据库 ( http://eloquera.com )。我必须选择一个。我的基本要求是 RAD 的可扩展性、多用户支持和简单的类型演变。

  1. 请分享您的真实世界经验。

  2. 如果你有两个,你能比较这两个吗?你喜欢哪个?

0 投票
9 回答
6179 浏览

database-design - 面向对象的数据库——为什么大多数公司不使用它们

我对编程很陌生(刚完成大学)。

在过去的 4 年中,我一直在思考面向对象的开发以及这种方法的众多优势。

我的问题是

在开发应用程序中使用纯面向对象的数据库不是更容易吗?

为什么面向对象数据库不像关系数据库那样分散?

从我的角度来看,使用 OO 数据库是有意义的,后者将避免在表上映射复杂对象所需的大量构造。

0 投票
2 回答
795 浏览

object-oriented-database - 带有算术运算符的 Versant OQL 语句

我正在处理使用 Versant 对象数据库后端的 ac# 项目,并且我正在尝试构建一个包含算术运算符的查询。该文档声明它受支持,但缺少任何示例。

我正在尝试构建这样的东西:

如果我在对象检查器中尝试这个语句,我会在“-”附近得到一个合成错误。

任何人都有使用这种语句的工作 VQL 的示例?

谢谢