一对多
一对多与多对一是一个概念,指的是一个实体的某个数据与另外一个实体的多个数据有关联关系。
班级表(一表)
名称 | 教室 | 总人数 | 学科 |
PHP141115 | A814 | 53 | PHP |
PHP140925 | A806 | 55 | PHP |
学生表(多表)
学号 | 姓名 | 性别 | 年龄 |
Itcast0001 | 何权森 | 男 | 22 |
Itcast0002 | 朱红林 | 男 | 保密 |
Itcast0003 | 詹曼雪 | 女 | 保密 |
Itcast0004 | 刘星 | 男 | 28 |
将实体间的多对一的关系进行维护:在“多”表中,增加一个字段能够指向“一”表中,唯一字段。
学号 | 姓名 | 性别 | 年龄 | 班级名称 |
Itcast0001 | 何权森 | 男 | 22 | PHP141115 |
Itcast0002 | 朱红林 | 男 | 保密 | PHP141115 |
Itcast0003 | 詹曼雪 | 女 | 保密 | PHP140925 |
Itcast0004 | 刘星 | 男 | 28 | PHP140925 |
多对多
一个实体的数据对应另外一个实体的多个数据,另外实体的数据也同样对应当前实体的多个数据。
教师表(多)
姓名 | 性别 | 年龄 |
犬夜叉 | 男 | 300 |
戈薇 | 女 | 18 |
班级表(多)
名称 | 教室 | 总人数 | 学科 |
PHP141115 | A814 | 53 | PHP |
PHP140925 | A806 | 55 | PHP |
犬夜叉:教过PHP141115和PHP140925
PHP141115:被犬夜叉和戈薇教过
解决方案:创建一个中间表,专门用来维护多表之间的对应关系,通常是能够唯一标识出数据的字段(主键)