- 实体框架教程
- 实体框架 - 主页
- 实体框架 - 概述
- 实体框架 - 架构
- 实体 F - 环境设置
- 实体框架 - 数据库设置
- 实体框架 - 数据模型
- 实体框架-DbContext
- 实体框架 - 类型
- 实体框架 - 关系
- 实体框架 - 生命周期
- 实体 F - 代码优先方法
- 实体 F - 模型优先方法
- 实体 F - 数据库优先方法
- 实体框架 - DEV 方法
- 实体F——数据库操作
- 实体框架 - 并发
- 实体框架 - 事务
- 实体框架 - 视图
- 实体框架 - 索引
- 实体 F - 存储过程
- 实体 F - 断开连接的实体
- 实体 F - 表值函数
- 实体框架 - 本机 SQL
- 实体框架 - 枚举支持
- 实体F - 异步查询
- 实体框架 - 持久性
- 实体 F - 投影查询
- 实体 F - 命令记录
- 实体F——命令拦截
- 实体框架 - 空间数据类型
- 实体框架 - 继承
- 实体框架 - 迁移
- 实体框架 - 预加载
- 实体框架 - 延迟加载
- 实体框架 - 显式加载
- 实体框架 - 验证
- 实体框架 - 跟踪更改
- 实体框架 - 彩色实体
- 实体 F - 代码优先方法
- 实体框架 - 第一个示例
- 实体框架 - 数据注释
- 实体框架 - 流畅的 API
- 实体框架-种子数据库
- 实体 F - 代码优先迁移
- 实体 F - 多个 DbContext
- 实体 F - 嵌套实体类型
- 实体框架资源
- 实体框架 - 快速指南
- 实体框架 - 有用的资源
- 实体框架 - 讨论
实体框架 - 数据库设置
在本教程中,我们将使用一个简单的大学数据库。大学数据库整体上可能要复杂得多,但出于演示和学习目的,我们使用该数据库最简单的形式。下图包含三个表。
- 学生
- 课程
- 注册
每当使用术语数据库时,我们都会直接想到一件事,那就是具有某种关系的不同类型的表。表之间的关系分为三种类型,不同表之间的关系取决于相关列的定义方式。
- 一对多关系
- 多对多关系
- 一对一的关系
一对多关系
一对多关系是最常见的关系类型。在这种类型的关系中,表 A 中的一行可以在表 B 中具有多个匹配行,但表 B 中的一行在表 A 中只能有一个匹配行。例如,在上图中,Student 和 Enrollment 表有一个一对多关系,每个学生可能有多个注册,但每个注册只属于一个学生。
多对多关系
在多对多关系中,表 A 中的一行可以在表 B 中具有多个匹配行,反之亦然。您可以通过定义第三个表(称为连接表)来创建这样的关系,该表的主键由表 A 和表 B 中的外键组成。例如,Student 和 Course 表具有多对多关系,定义如下:这些表中的每一个与 Enrollment 表之间存在一对多关系。
一对一的关系
在一对一关系中,表 A 中的一行在表 B 中只能有一个匹配行,反之亦然。如果两个相关列都是主键或具有唯一约束,则会创建一对一关系。
这种类型的关系并不常见,因为以这种方式相关的大多数信息都是全合表。您可以使用一对一的关系来 -
- 将一个表分成许多列。
- 出于安全原因隔离表的一部分。
- 存储短暂的数据,只需删除表即可轻松删除。
- 存储仅适用于主表子集的信息。