JavaWeb 课堂笔记 —— 11 MySQL 多表设计
本系列为笔者学习JavaWeb的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖Spring+MyBatis+SpringMVC+SpringBoot等)》,章节分布参考视频教程,为同样学习JavaWeb系列课程的同学们提供参考。
01 概述
在项目开发进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结构,包括一对多、多对多和一对一。
02 一对多
需求:
现象:
注:可使用foreign key
物理外键关联定义另一张表,但会降低增、删、改效率,不适用于分布式和集群场景,且容易引发数据库死锁,消耗性能。相比之下,逻辑外键更胜一筹。