数据库之表关系(一对一,一对多,多对一,多对多)
数据库表与表之间一般存在三种关系:一对一,一对多/多对一,多对多。
一对一(不常用)
一个人 => 一个身份证号
一个人 => 一个国籍
一个学生 => 一个学号
一个人 => 一个性别
...
如下:
文章图片
这里我们通过 pid 与 cid 的一对一关系来,查找一个人对应的一个身份证号,这里要么只存在一条对应的数据,要么没有数据.
当然这种一对一的关系不常用
一对多/多对一
班级表与学生表
从班级表的角度看:一个班级 => 多个学生
从学生表的角度看:多个学生 => 一个班级
一对多或者多对一的表关系中,我们会在多的那张表中去维护两张表之间的关系
多对多
【数据库之表关系(一对一,一对多,多对一,多对多)】学生表与课程表
从学生表的角度看:一个学生 => 多个课程
从课程表的角度看:一个课程 => 多个学生
所以多对多这种关系,我们一般会有一个中间表去维护两张表之间的关系
文章图片
文章图片
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- 装聋作哑,关系融洽
- 数据库设计与优化
- 关系问句
- 数据库总结语句
- MySql数据库备份与恢复
- 数据库|SQL行转列方式优化查询性能实践
- 异性同事关系再好,一旦做了这5件事,就是想0距离接触
- 一般模型化关系——从模型是什么到如何起作用的基本答案
- R语言迹检验协整关系式_使用R语言进行协整关系检验