数据库表与表之间的关系
表与表之间的关系有三种:一对一、一对多、多对多
1. 一对一
一张表的一条记录一定只能与另外一张表的一条记录进行对应;反之亦然。


一个常用表中的一条记录,永远只能在一张不常用表中匹配一条记录;反过来,一个不常用表中的一条记录在常用表中也只能匹配一条记录:一对一关系。
在实际的开发中应用不多,因为一对一可以创建成一张表。
建表原则:
外键唯一:主表的主键和从表的外键(唯一),形成主外键关系,外键唯一。
外键是主键:主表的主键和从表的外键,形成主外键关系。
2. 一对多
一张表中有一条记录可以对应另外一张表中的多条记录;但是反过来,另外一张表的一条记录只能对应第一张表的一条记录。



建表原则:
在“多”的一方创建一个字段,字段作为外键指向“一”的一方的主键。
3. 多对多
第一张表中的一条记录能够对应第二张表中的多条记录;同时第二张表中的一条记录也能对应第一张表中的多条记录。


中间表与老师表形成一对多的关系,而且中间表是“多”的一方,维护了能够唯一找到“一”表的关系;同样的,学生表与中间表也形成了一对多的关系。
老师找学生:老师表-中间表-学生表
学生赵老师:学生表-中间表-老师表
建表原则:
创建第三张表,中间表至少两个字段,分别作为外键指向各自一方的主键。