8. E-R 图与数据库设计

设计数据库前,先要分析现实世界中有哪些实体(Entity)、它们之间有什么联系(Relationship)——这就是 E-R 图(实体-联系图)。

三种基本联系(以校园为例):

联系类型例子说明
一对一(1:1)学生 —— 学籍档案一个学生只有一份档案
一对多(1:n)班级 —— 学生一个班级有多名学生,一名学生只属于一个班级
多对多(m:n)学生 —— 课程一名学生可选多门课,一门课有多名学生选

我们的教学实例库就是按这个思路设计的:

  • student(学生表)、course(课程表)、teacher(教师表)是三个实体表;
  • 学生与课程是多对多关系,靠 sc(选课成绩表)把它们联系起来;
  • 教师与课程是一对多关系,course 表里的 Tno 字段记录任课教师。
💡 设计口诀:先找实体(名词),再找联系(动词),多对多必须拆出中间表。