ER 图表示
现在让我们学习如何通过 ER 图来表示 ER 模型。 任何对象,例如实体、实体的属性、关系集和关系集的属性,都可以借助 ER 图来表示。
实体
实体用矩形表示。 矩形以其所代表的实体集命名。
![学校数据库中的实体](https://www.w3ccoo.com/dbms/images/entities.png)
属性
属性是实体的属性。 属性用省略号表示。 每个椭圆代表一个属性,并直接连接到它的实体(矩形)。
![Simple 简单属性](https://www.w3ccoo.com/dbms/images/er_attributes.png)
如果属性是复合的,它们会被进一步划分为树状结构。 然后每个节点都连接到它的属性。 也就是说,复合属性由椭圆表示,椭圆与椭圆相连。
![Composite 复合属性](https://www.w3ccoo.com/dbms/images/er_attributes_composite.png)
多值属性用双椭圆表示。
![Multivalued 多值属性](https://www.w3ccoo.com/dbms/images/er_attributes_multivalued.png)
派生属性用虚线椭圆表示。
![Derived 派生属性](https://www.w3ccoo.com/dbms/images/er_attributes_derived.png)
关系
关系用菱形框表示。 关系的名称写在菱形框中。 参与关系的所有实体(矩形)都通过一条线连接到它。
二元关系和基数
两个实体参与的关系称为二元关系。 基数是可以与关系关联的关系中实体的实例数。
一对一 − 当一个实体只有一个实例与关系相关联时,它被标记为"1:1"。 下图反映了每个实体只有一个实例应该与关系相关联。 它描述了一对一的关系。
一对多 − 当一个实体的多个实例与关系相关联时,它被标记为"1:N"。 下图反映了只有左侧实体的一个实例和右侧实体的多个实例可以与该关系关联。 它描述了一对多的关系。
多对一 − 当多个实体实例与关系关联时,它被标记为"N:1"。 下图反映了左侧实体的多个实例和右侧实体的一个实例可以与关系相关联。 它描述了多对一的关系。
多对多 − 下图反映了左侧实体的多个实例和右侧实体的多个实例可以与关系相关联。 它描述了多对多关系。
![One-to-one 一对一](https://www.w3ccoo.com/dbms/images/er_relation_one_to_one.png)
![One-to-many 一对多](https://www.w3ccoo.com/dbms/images/er_relation_one_to_many.png)
![Many-to-one 多对一](https://www.w3ccoo.com/dbms/images/er_relation_many_to_one.png)
![Many-to-many 多对多](https://www.w3ccoo.com/dbms/images/er_relation_many_to_many.png)
参与约束
总参与度 − 每个实体都参与关系。 总参与度用双线表示。
部分参与 − 并非所有实体都参与该关系。 部分参与用单行表示。
![参与约束](https://www.w3ccoo.com/dbms/images/er_relation_participation.png)