为一个大学数据库应用程序(DBMS)绘制ER图?


问题

考虑以下约束条件,绘制大学数据库应用程序的ER模型图:

  • 一所大学有多个系。

  • 每个系有多名教师(一人为系主任)。这里的系主任指的是系主任。

  • 一名教师只属于一个系。

  • 每个系开设多门课程,每门课程由一名教师教授。

  • 一名学生可以选修不同系开设的多门课程。

解决方案

按照以下步骤为大学数据库应用程序绘制实体关系(ER)图:

步骤 1 - 识别实体集。

实体集在给定的业务场景中有多个实例。

根据给定的约束条件,实体集如下:

  • 课程

  • 学生

  • 教师

系主任不是实体集。它是教师和系实体之间的关系。

步骤 2 - 识别给定实体的属性

  • 系 - 相关属性为系名称和位置。

  • 课程 - 相关属性为课程编号、课程名称、持续时间和先修课程。

  • 教师 - 相关属性为教师姓名、房间号和电话号码。

  • 学生 - 相关属性为学号、学生姓名和出生日期。

步骤 3 - 识别主键属性

  • 系名称是系的主键属性。

  • 课程编号是课程实体的主键属性。

  • 教师姓名是教师实体的主键属性。

  • 学号是学生实体的主键属性。

步骤 4 - 识别实体集之间的关系

  • 系开设多门课程,每门课程只属于一个系,因此系与课程之间的基数是一对多。

  • 多名学生选修一门课程,一名学生选修多门课程。因此,关系是多对多。

  • 一个系有多名教师,一名教师只属于一个系,因此关系是一对多。

  • 每个系有一位“系主任”,一位教师只能在一个系担任“系主任”,因此关系是一对一。这里,系主任指的是系主任。

  • 一门课程只由一位教师教授,但一位教师可以教授多门课程,因此课程与教师之间的关系是多对一。

教师与学生之间的关系没有定义,原因如下:

  • 关系没有意义。

  • 我们总是可以通过课程和教师,以及课程和学生间接推导出这种关系。

步骤 5 - 完整的 ER 模型

完整的 ER 模型如下:

更新时间: 2023年11月1日

72K+ 浏览量

开启你的职业生涯

通过完成课程获得认证

开始学习
广告