数据库MySQL-实体之间的关系

2020-03-27 12:36:23 浏览数 (1)

1.2 实体之间的关系

1.2.1 一对多(1:N)

主表中的一条记录对应从表中的多条记录

实现一对多的方式:主键和非主键建关系

问题:说出几个一对多的关系?

班主任表——学生表 品牌表——商品表

1.2.2 多对一(N:1)

多对一就是一对多

1.2.3 一对一(1:1)

如何实现一对一:主键和主键建关系

思考:一对一两个表完全可以用一个表实现,为什么还要分成两个表?

答:在字段数量很多情况下,数据量也就很大,每次查询都需要检索大量数据,这样效率低下。我们可以将所有字段分成两个部分,“常用字段”和“不常用字段”,这样对大部分查询者来说效率提高了。【表的垂直分割】

1.2.3 多对多(N:M)

主表中的一条记录对应从表中的多条记录,从表中的一条记录,对应主表中的多条记录

如何实现多对多:利用第三张关系表

问题:说出几个多对多的关系?

讲师表——学生表 课程表——学生表 商品表——订单表

小结:

如何实现一对一:主键和主键建关系 如果实现一对多:主键和非主键建关系 如何实现多对多:引入第三张关系表

0 人点赞