实体关系模型和关系数据模型有什么区别?

大多数数据库开发人员都不知道其中的区别:让我们从RDM关系模型开始,因为它是首先被形式化的。

RDM是一种逻辑数据模型
意味着它将一阶谓词逻辑应用于数据建模领域。它将数据分解为n元关系(可以表示为表),并描述数据中保存的逻辑依赖关系,并定义关系的范式,以防止由于冗余依赖关系而导致更新异常。

ERM实体关系模型是数据的概念模型
用实体、关系和属性来描述数据。

尽管 Peter Chen被认为发明了该模型,但我相信“实体”和“关系”这两个术语在他的论文发表之前就已经在使用了。

还有其他模型,例如使用类似术语的实体集模型。事实上,Chen 是第一个尝试用 RDM 形式化 ER 模型的人,并在他的论文中提供了如何从概念 ER 模型映射到逻辑关系模型的详细信息。

步骤:

  1. 数据建模者将从定义 ER 模型开始,因为它根据业务实体及其之间的关系来描述数据。
  2. 然后,他们理想地将其映射到关系模型,将实体和关系映射到关系,将属性映射到角色,识别依赖关系并规范化模型。
  3. 最后,他们将逻辑关系映射到物理表,将逻辑域映射到物理数据类型和外键约束,从可用的候选键中选择主键,等等。

然而,在实际实践中,大多数数据库开发人员直接从概念到物理,从未研究过形式逻辑和 RM。

误解:表之间存在关系的概念是对 SQL 表的前关系网络数据模型解释的回归,而不是来自 RM 或 ERM 的概念。