数据库中的二元关系


二元关系是两个不同实体之间的关系,即一个实体的角色组与另一个实体的角色组之间的关系。

二元关系有三种基数类型:

1. 一对一

2. 一对多

3. 多对多

一对一

这里,一个实体的一个角色组映射到另一个实体的一个角色组。简单来说,一个实体的一个实例只映射到另一个实体的一个实例。

在这种类型中,一个实体的主键必须作为外键存在于另一个实体中。

例如:考虑两个实体PersonDriver_License

Person包含关于个人的信息,Driver_License包含关于个人驾驶执照的信息。从Driver_License到Person的关系是可选的,因为并非所有的人都拥有驾驶执照。而从Person到Driver_License的关系是强制性的,即Driver_License的每个实例都必须与一个Person相关联。

一个人只能拥有一个驾驶执照号码。

一对多

一个实体的一个角色组映射到第二个实体的多个角色组,而第二个实体的一个角色组映射到第一个实体的一个角色组。

例如:考虑两个实体ProjectEmployee

一个项目可以有多个员工参与,但一个员工始终只参与一个项目。

多对多

一个实体的一个角色组映射到第二个实体的多个角色组,而第二个实体的一个角色组映射到第一个实体的多个角色组。在这种关系中,始终会关联一个第三个表来定义这两个实体之间的关系。

例如:考虑两个实体StudentBooks

许多学生可以拥有一本书,而许多书可以发放给一个学生,因此这是一个多对多的关系。

现在,在两者之间会有一个第三个关系Book_Issue来定义Student和Book实体之间的关系。它将包含为每个发放书籍的学生的信息以及发放天数,即它将跟踪所有发放的书籍。

更新于:2020年6月18日

8K+ 浏览量

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.