Entity Framework - 数据库设置

在本教程中,我们将使用一个简单的大学数据库.大学数据库整体上可能要复杂得多,但出于演示和学习的目的,我们使用的是最简单的数据库形式.下图包含三个表格.

  • 学生

  • 课程

  • 注册

数据库

每当使用一个术语数据库时,一件事就直接出现在我们的脑海中,这是一种具有某种关系的不同类型的表.表之间有三种类型的关系,不同表之间的关系取决于相关列的定义方式.

  • 一对一许多关系

  • 多对多关系

  • 一对一关系

一对多关系

一对多关系是最常见的关系类型.在这种类型的关系中,表A中的行可以在表B中具有许多匹配的行,但是表B中的行在表A中只能有一个匹配的行.例如,在上图中,Student和Enrollment表有一个对多个关系,每个学生可能有很多注册,但每个注册只属于一个学生.

多对多关系

在多对多关系中,表A中的行可以在表B中具有许多匹配的行,反之亦然.您可以通过定义第三个表来创建这样的关系,该表称为联结表,其主键由表A和表B中的外键组成.例如,Student和Course表具有由多个到多个关系,由从每个表到注册表的一对多关系.

一对一的关系

在一对一中一个关系,表A中的一行在表B中只能有一个匹配的行,反之亦然.如果两个相关列都是主键或具有唯一约束,则会创建一对一关系.

这种类型的关系并不常见,因为以这种方式相关的大多数信息都是一体化表.你可以使用一对一的关系来 :

  • 用一个列分割一个表.

  • 出于安全原因隔离表的一部分.

  • 存储短暂的数据,只需删除表即可轻松删除.

  • 存储仅适用于主表子集的信息.