数据库表格之间经常存在各种关系:
一对一、一对多、多对多
1.一对一 —— 丈夫表,妻子表为例
连接方式一:合并为一张表 这种方式对于一对一来说最优
连接方式二:在其中一张表内加入一个外键,连接另一张表
连接方式三:单独创建一张表(不常用)
这三种连接方式从上到下,越来越复杂
2.一对多 —— 班级和部门,老师和学生表
连接方式一:合并为一张表 这种方法对于那个“一”方会存好多遍 造成数据冗余
连接方式二:在多方加入外键(多方为学生表) 这种方法没有数据冗余(重复的1,2,3表示关系,并不是冗余),在一方(班级表)加入外键,也会造成数据冗余
这种处理是一对多的最优处理结果
连接方式三:单独创建一张表 没有冗余 但是运行较为复杂
3.多对多 —— 班级和部门,老师和学生表
连接方式一:合成一张表 不好 都会造成数据冗余
连接方式二:添加外键,不论存在哪一方,都会造成数据冗余
连接方式三: 新建一张表,不会造成冗余,对于多对多来说单独创建一张表为最优方式