database-design - ER 图,关系所属方指定

标签 database-design entity-relationship

据我了解,ER 图首先是一个概念模型,从某种意义上说,它描述关系,而不考虑它们如何在实际数据库中表示/实现。但是,如果我想要一个既描述关系又反射(reflect)关系的哪一部分是“拥有”方的图表,该怎么办?比如说,在 JPA 中,有些关系可以是单向的;如果定义为双向,则这种关系的一侧是所有者,另一侧是反向 - 通常,例如,具有其他表的外键的表将是拥有侧,而引用的表将是反面。

我想知道是否有任何广泛使用的 ER 符号可以注释所属方(或单向关系的方向),或者至少显示哪些外键指向哪些方向?

最佳答案

最常见的 ER 表示法是 IE、Barker 和 IDEF1X 的变体。所有这些都使用不同的符号,应该清楚地表明外键位于哪一侧(“多”一侧)。

外键不是指针,因此它们没有方向。在面向对象编程中,方向性是指如何使用指针来实现控制流。换句话说,方向性是一种编程语言特征,而不是数据模型特征。现代 DBMS 不在其数据模型中公开指针。事实上,ER 建模是在 20 世纪 70 年代开发的,作为一种抽象数据模型的方法,不受当时基于指针的系统的限制。

UML 表示法确实具有方向关联的概念,因为 UML 用于建模行为和编程结构,而不仅仅是数据。

关于database-design - ER 图,关系所属方指定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49927933/

相关文章:

mysql - 不同角色用户的最佳表结构

mysql - 数据库设计 : how to enforce integrity

database - 表中单个属性的解决方案

mysql - 如何使用 Workbench 从服务器获取数据库的 ER 模型

mysql - Doctrine2 SQLSTATE[42000] : Syntax error or access violation: 1064

entity-relationship - 与同一实体的关系 - ER 图

database-design - 你如何在关系数据库中存储一个 trie?

mysql - 选择具有复杂 JOIN 的行

algorithm - 处理评级系统的最佳方式

php - "Has A"或 "Belongs To"关系还是其他什么?