1.1多表设计之表关系
1.1.1表与表之间的关系
- 一对多的关系
- 一对多的例子:一个部门下可以有多个员工,一个员工只能属于某一个部门。
- 多对多的关系
- 多对多的例子:一个学生可以选择多门课程,一门课程可以被多个学生选择。
- 一对一的关系
- 一对一的例子:一个公司可以有一个注册地址,一个注册地址只能对一个公司。
1.2 多表设计之一对多关系
- 原则
-
在多的一方创建外键指向一的一方的主键
- 一对多关系.png
-
1.3 多表设计之多对多的关系
- 一个学生选择多门课程,一门课程被多个学生所选择
- 原则
-
需要创建中间表,中间表中至少两个字段,分别作为外键指向多对多双方的主键
- 多对多的关系.png
-
1.4 多表设计之一对一关系
- 一个公司可以对应一个注册地址,一个注册地址只能对应一个公司
- 原则
-
唯一外键对应
- 假设是一对多,在多的一方创建外键指向一的一方的主键,将外键设置为unique。
-
主键对应
- 将两个表的主键建立对应关系即可。
- 一对一关系.png
-
1.5 多表设计之多表分析及创建
-
完成一个学校的选课系统,在选课系统中包含班级,学生和课程这些实体。
- 班级和学生之间是有关系存在:
- 一个班级下包含多个学生,一个学生只能属于某一个班级(一对多的关系)。
- 学生和课程之间是有关系存在:
- 一个学生可以选择多门课程,一门课程也可以被多个学生所选择(多对多的关系)。
- 班级和学生之间是有关系存在:
-
多表的创建
- 创建表.png
1.6 练习:
- 实现一个网上商城案例,在商城中会有用户,商品,订单,商品分类。
网友评论