Object 对象角色建模和对象关系映射之间有什么区别?

Object 对象角色建模和对象关系映射之间有什么区别?,object,orm,role,database-design,object-role-modeling,Object,Orm,Role,Database Design,Object Role Modeling,我已经学习了对象角色建模,但没有学习对象关系映射,我想知道它们是否是做同一件事的两种方法,它们的优缺点是什么?对我来说,对象角色建模更有意义。如果可以比较的话,你能做一个简单易懂的比较吗。干杯你正在把苹果变成橘子。 对象关系映射就是试图克服对象世界和关系数据库之间的不匹配 例如,Activerecord是一种在数据库中包装行的ORM。 Hibernate是另一种流行的ORM 只是谷歌的ORM维基百科解释得更好 对象角色建模:软件建模符号,特别用于定义域模型。您可以将此语言视为使用UML类图设计数

我已经学习了对象角色建模,但没有学习对象关系映射,我想知道它们是否是做同一件事的两种方法,它们的优缺点是什么?对我来说,对象角色建模更有意义。如果可以比较的话,你能做一个简单易懂的比较吗。干杯

你正在把苹果变成橘子。 对象关系映射就是试图克服对象世界和关系数据库之间的不匹配

例如,Activerecord是一种在数据库中包装行的ORM。 Hibernate是另一种流行的ORM

只是谷歌的ORM维基百科解释得更好


对象角色建模:软件建模符号,特别用于定义域模型。您可以将此语言视为使用UML类图设计数据库的替代方法。更多信息请点击此处:


对象关系映射:一组弥合面向对象程序和关系数据库之间差距的策略。它的目标是在关系数据库结构中持久存储对象。对象角色建模是由Control Data的一个团队在1973年左右发明的,由Falkenberg命名。这是一种植根于语言分析的建模方法,Terry Halpin将其形式化为一阶逻辑,参见。因此,ORM是首字母缩略词的原始用户。ORM和相关建模语言的区别在于无属性。这些语言只包含对象和对象类型(事物的种类)、事实和事实类型(个体事物之间的关系)以及约束(关于事物和关系可能存在的规则)。没有任何关系具有像实体属性那样的主从特性-这是一个仅在物理映射期间出现的概念,因为它与域的底层语义无关

对象关系映射(我总是编写O/RM)是一个方法或工具系列的名称,它帮助在关系表单和面向对象表单之间转换数据。这两种形式都使用基于属性(实体/属性或对象/属性)的聚合或复合事物,但这两种方法的聚合原则不同,因此相同的底层语义导致不同的数据结构;因此,需要工具来帮助自动化翻译。此外,在ER或O-O分析中,需要提前决定哪些东西是对象/实体,哪些是属性,这会导致一系列建模错误,而ORM根本不会出现这些错误


当然,关系模型和o-o模型都可以从ORM模型中自动派生,并且派生的表单之间的映射也是自动的、无痛的。我想这不会经常发生,因为这会让生活变得太简单。

对象真实建模应该是哪一种?OP已经了解对象角色建模,因此没有必要解释它。我解释了什么是对象关系映射,以及他可以在哪里找到更多答案。我不明白我为什么感到沮丧对不起,这没有任何意义。我从来没有提到“对象真实建模”,我说的是对象关系映射和对象角色建模,我是如何理解你们所说的。我在谷歌上搜索过他们,但我想知道他们与那些使用这种方法的人的区别。你被否决了,因为在你编辑你的文章之前,有太多的打字错误,根本没有意义。