数据库设计/大学注册数据模型示例
以下是对支持注册和帮助虚构电子学习大学学生的平台的数据需求声明。
电子学习大学需要保留其学生和教职工的详细信息,其提供的课程以及学习其课程的学生的成绩。该大学在四个地理区域(英格兰、苏格兰、威尔士和北爱尔兰)进行管理。
关于每个学生的相关信息应在注册时最初记录。这包括学生在注册时发放的识别号码、姓名、注册年份和学生所在的区域。学生在注册时不需要报名任何课程;课程报名可以在以后进行。
记录的每个辅导和咨询教职工成员的信息必须包括教职工编号、姓名和其所在的区域。每个教职工成员可以担任一个或多个学生的辅导员,并且可以担任一个或多个课程的一个或多个学生的导师。在任何特定时间点,教职工成员可能没有被分配任何学生进行辅导或咨询。
每个学生在注册时被分配了一名辅导员,在整个大学学习生涯中都会为学生提供支持。学生在注册的每门课程中被分配了一个单独的导师。教职工成员只能辅导或咨询与该教职工成员住在同一地区的学生。
每门可以学习的课程必须有一个课程代码、一个标题和一个学分值。课程要么是 15 学分课程,要么是 30 学分课程。课程可能对任何一次授课中注册课程的学生数量有所限制。课程可能没有任何学生注册(例如,刚编写并提供学习的课程)。
学生在任何时间段内可以注册的课程数量受到限制。如果他们的总学分超过 180 分,则他们不能同时选修课程。
出于评估目的,一门 15 学分的课程每次授课最多可以有三个作业,而一门 30 学分的课程每次授课最多可以有五个作业。任何课程作业的成绩以 100 分制记录。
以下的大学数据库是一个可能的数据库模型,用于描述上述需求集。该模型包含多个部分,从 ERD 开始,然后是实体类型、约束和假设的文字描述。
参见图 A.1。
- 第一步是确定内核。这些通常是名词:教职工、课程、学生和作业。
- 下一步是记录每个实体的所有属性。这是你需要确保所有表格都正确规范化的地方。
- 创建初始 ERD 并与用户一起审查。
- 如果需要,在 ERD 审查后进行更改。
- 使用户验证 ER 模型以最终确定设计。
图 A.1。大学 ERD。由 A. Watt 提供的学生和教职工记录系统的数据库模型。
学生 (StudentID, 姓名, 注册, 地区, StaffNo)
教职工 (StaffNo, 姓名, 地区) - 此表包含讲师和其他教职工成员。
课程 (CourseCode, 标题, 学分, 名额, StaffNo)
注册 (StudentlD, CourseCode, 注册日期, 最终成绩)
作业 (StudentID, CourseCode, 作业编号, 成绩)
- 教职工成员只能辅导或咨询与教职工成员住在同一地区的学生。
- 学生在任何时间段内不能注册超过 180 学分的课程。
- 属性学分(课程)的值为 15 分或 30 分。
- 一门 30 学分的课程最多可以有五个作业;一门 15 学分的课程最多可以有三个作业。
- 属性成绩(作业)的值是 100 分制的分数。
- 学生在一个课程中最多只有一次注册,因为只记录当前注册。
- 作业只能提交一次。
使用图 A.2,请注意,学生(记录)与(注册)至少 1 门到最多多门课程相关联。
每个注册都必须有一个有效的学生。
注意:由于 StudentID 是 PK 的一部分,因此它不能为 null。因此,输入的任何 StudentID 必须至少在 Student 表中存在一次,最多存在 1 次。这应该很明显,因为 PK 不能有重复项。
图 A.2 由 A. Watt 提供。
参考图 A.3。教职工记录(导师)与至少 0 个学生到最多多个学生相关联。
学生记录可能存在或不存在导师。
图 A.3 由 A. Watt 提供。
注意:Student 表中的 StaffNo 字段允许 null 值 - 由左侧的 0 表示。但是,如果 Student 表中存在 StaffNo,它必须在 Staff 表中最多存在一次 - 由左侧的 1 表示。
参考图 A.4。教职工记录(讲师)与至少 0 门课程到最多多门课程相关联。
课程可能存在或不存在与讲师相关联。
注意:Course 表中的 StaffNo 是 FK,它可以为 null。这表示关系左侧的 0。如果 StaffNo 包含数据,它必须在 Staff 表中最多存在一次。这表示关系左侧的 1。
图 A.4 由 A. Watt 提供。
参考图 A.5。课程必须至少提供(注册)一次,最多提供多次。
Enrollment 表必须包含至少 1 门有效课程,最多包含多门课程。
图 A.5 由 A. Watt 提供。
参考图 A.6。注册可以包含至少 0 个作业或最多多个作业。
作业必须与至少 1 个到最多 1 个注册相关联。
注意:Assignment 表中的每个记录都必须包含有效的注册记录。一条注册记录可以与多个作业相关联。
图 A.6 由 A. Watt 提供。
这是改编,而不是推导,因为作者写了一半。来源:http://openlearn.open.ac.uk/mod/oucontent/view.php?id=397581§ion=8.2