关系数据库之所以能够成为一种流行的数据存储手段,其中一个原因就是它可以在表与表之间建立关系,从而使不同的数据能够以一种一致且易于理解的方式互相进行关联。基本上,有4种方法可以把一项记录与其他记录关联起来:
- 一对一关联,也被称为“有一个”(has one)关系,比如一个用户必然会拥有一个个人简介;
- 一对多关联,也被称为“有多个”(has many)关系,比如一个用户可能会拥有多篇论坛帖子;
- 多对一关联,也被称为“属于”(belongs to)关系,比如多篇论坛帖子可能会同属于某一个用户;
- 多对多关联,比如一个用户可能会参与论坛里面多篇帖子的讨论,而一篇帖子里面也会有多个用户在发表评论。
在前面的内容中,我们已经学习了如何对单个数据库表执行标准的CRUD操作,但我们还不知道如何才能对两个相关联的表执行相同的操作。因此,在这一节,我们将要学习如何通过一对多关系为一篇论坛帖子构建多篇评论。与此同时,因为一对多关系跟多对一关系实际上就是一体两面的两个东西,所以除了一对多关系之外,我们还会学习如何使用多对一关系。