目录

 

多表之间的关系

一对一

一对多(多对一)

多对多


多表之间的关系

多表之间总共存在着三种关系:一对一,一对多,多对多

一对一

如:人和身份证

分析:一个人只有一个身份证,一个身份证只能对应一个人

实现原则:一对一关系实现,可以在任意一方添加唯一外键指向另一方的主键
                 其实实际开发中遇到的一对一的情况比较少,如果是一对一,还不如直接合为一张表,没必要拆分成两张表

MySQL数据库——多表关系

这里重点是外键添加唯一特性,因为外键是可重复的,只有添加了唯一特性才能保证是一对一

一对多(多对一)

如:部门和员工

分析:一个部门有多个员工,一个员工只能对应一个部门

实现原则:在多的一方建立外键,指向一的一方的主键

MySQL数据库——多表关系

多对多

如:学生和课程

分析:一个学生可以选择很多门课程,一个课程也可以被很多学生选择

原则:多对多关系实现需要借助第三张中间表。中间表至少包含两个字段,将多对多的关系,拆成一对多的关系,中间表至少要有两个外键,这两个外键分别指向原来的那两张表的主键

MySQL数据库——多表关系

通过中间表可以做到一个人可以选择多门课程,一门课程也可以被多个人选择,但是联合主键是唯一的,也就是说两个主键的组合方式是唯一的

相关文章:

  • 2021-10-04
  • 2021-06-24
  • 2021-11-24
  • 2021-12-18
  • 2021-07-09
  • 2021-06-24
  • 2022-01-16
猜你喜欢
  • 2021-12-12
  • 2021-10-04
  • 2021-10-04
  • 2022-12-23
  • 2021-11-02
  • 2021-10-04
  • 2021-11-02
相关资源
相似解决方案