为什么给程序员说多对多时,总感觉不在一个频道上。原因产品经理说的多对多关系是生活中的多对多,例如一个辅导员可以辅导多个班级,一个班级可以有多个辅导员,这就是生活中的多对多,而程序员有时候会理解为数据库表的关系,但是数据库表没有多对多的关系,只有一对一、一对多的关系。
那么在程序中怎么表现多对多的关系呢?将一个多对多的关系,转换成两个一对多的关系。一般会设计三个表,两个表分别表示两种实体,另外需要一个表表示两种实体之间的关系,如下图
为什么给程序员说多对多时,总感觉不在一个频道上。原因产品经理说的多对多关系是生活中的多对多,例如一个辅导员可以辅导多个班级,一个班级可以有多个辅导员,这就是生活中的多对多,而程序员有时候会理解为数据库表的关系,但是数据库表没有多对多的关系,只有一对一、一对多的关系。
那么在程序中怎么表现多对多的关系呢?将一个多对多的关系,转换成两个一对多的关系。一般会设计三个表,两个表分别表示两种实体,另外需要一个表表示两种实体之间的关系,如下图