中间表-多对多关系的转化:
在表的使用中,经常存在多对多的关系,以订单和商品为例,一个订单对应多个商品,一个商品也对应多个订单,此时把E-R图(E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型)转化为关系模型时,需要引入中间表。
中间表包含两个实体类的主键,建立两张表沟通。
中间表也可以有普通字段,例如商品数量,每种商品总和(需要把他们与实体表中字段含义区分开)。
中间表主键:
中间表的主键可以是两个外键作为联合主键( 联合主键就是说,当一个字段可能存在重复值,无法确定这条数据的唯一性时,再加上一个字,两个字段联合起来确定这条数据的唯一性。比如你提到的id和name为联合主键,在插入数据时,当id相同,name不同,或者id不同,name相同时数据是允许被插入的,但是当id和name都相同时,数据是不允许被插入的),也可以是再增加一个主键字段。
三个实体间存在多对多的关系:
有一个实体与剩下两个实体存在N:M关系,剩下两个实体没有
三个实体间存在多对多关系