实体框架 – 数据库设置
实体框架 – 数据库设置
在本教程中,我们将使用一个简单的大学数据库。大学数据库作为一个整体可能要复杂得多,但出于演示和学习目的,我们使用该数据库的最简单形式。下图包含三个表。
- 学生
- 课程
- 注册
每当使用术语数据库时,我们都会直接想到一件事,那就是具有某种关系的不同类型的表。表之间存在三种关系,不同表之间的关系取决于相关列的定义方式。
- 一对多关系
- 多对多关系
- 一对一关系
一对多关系
一对多关系是最常见的关系类型。在这种关系中,A表中的一行可以在B表中有很多匹配的行,而B表中的一行在A表中只能有一个匹配行。例如,在上图中,Student和Enrollment表中只有一个一对多的关系,每个学生可能有多个注册,但每个注册只属于一个学生。
多对多关系
在多对多关系中,表 A 中的一行在表 B 中可以有许多匹配的行,反之亦然。您可以通过定义第三个表(称为联结表)来创建这种关系,该表的主键由表 A 和表 B 中的外键组成。例如,Student 和 Course 表具有由以下定义的多对多关系从这些表中的每一个到 Enrollment 表的一对多关系。
一对一关系
在一对一关系中,表 A 中的一行在表 B 中最多只能有一个匹配行,反之亦然。如果两个相关列都是主键或具有唯一约束,则会创建一对一关系。
这种类型的关系并不常见,因为以这种方式相关的大多数信息都是一体表。您可以使用一对一的关系 –
- 将一个包含许多列的表格分开。
- 出于安全原因隔离表的一部分。
- 存储时间很短并且可以通过简单地删除表轻松删除的数据。
- 存储仅适用于主表子集的信息。