数据库——表格之间的关系(表格之间的连接和处理)

数据库表格之间经常存在各种关系:

一对一一对多多对多

1.一对一 ------ 丈夫表,妻子表为例

连接方式一: 合并为一张表 这种方式对于一对一来说最优

**连接方式二:**在其中一张表内加入一个外键,连接另一张表

连接方式三 :单独创建一张表(不常用)

这三种连接方式从上到下,越来越复杂

2.一对多 ------ 班级和部门,老师和学生表

连接方式一 :合并为一张表 这种方法对于那个"一"方会存好多遍 造成数据冗余

**连接方式二:**在多方加入外键(多方为学生表) 这种方法没有数据冗余(重复的1,2,3表示关系,并不是冗余),在一方(班级表)加入外键,也会造成数据冗余

这种处理是一对多的最优处理结果

连接方式三:单独创建一张表 没有冗余 但是运行较为复杂

3.多对多 ------ 班级和部门,老师和学生表

**连接方式一:**合成一张表 不好 都会造成数据冗余

**连接方式二:**添加外键,不论存在哪一方,都会造成数据冗余

连接方式三 : 新建一张表,不会造成冗余,对于多对多来说单独创建一张表为最优方式

相关推荐
东阳马生架构3 小时前
MySQL底层概述—1.InnoDB内存结构
java·数据库·mysql
standxy4 小时前
通过轻易云平台实现聚水潭数据高效集成到MySQL的技术方案
android·数据库·mysql
itwangyang5204 小时前
2025 - 科研神器 - 批量处理 PDF、SVG、PNG 和 JPG 文件,将它们转换为彩色 TIFF 文件,并保存到指定的 tiff 文件夹中
数据库·pdf
痞老板A小安装C45 小时前
redis的大key和热key问题解决方案
数据库·redis·bootstrap
feilieren5 小时前
DataGrip 连接 Redis、TongRDS
数据库·redis·缓存
液态不合群5 小时前
Redis中常见的数据类型及其应用场景
数据库·redis·wpf
Allen Bright5 小时前
Jedis存储一个-以String的形式的对象到Redis
数据库·redis·缓存
Allen Bright6 小时前
Jedis存储一个以byte[]的形式的对象到Redis
数据库·redis·缓存
NiNg_1_2346 小时前
Redis中的zset用法详解
数据库·redis·缓存
尘浮生7 小时前
Java项目实战II基于SpringBoot前后端分离的网吧管理系统(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·后端·微信小程序·小程序