Database design for a classroom application using Parse.com
我正在开发一个电子学习移动应用程序,其中有 2 个用户,学生和教师。该应用程序的工作原理是这样的,老师可以创建由不同科目组成的课程,然后学生可以通过指定课程代码来加入课程。学生可以加入多门课程,而教师可以创建多门课程。我的应用程序的数据库设计有问题,不确定某些列是关系还是指针。我认为我正在使用 Parse.com 的框架,它的数据库基于 mongoDB。
我目前的数据库设计是这样的:
类:
Course 类有这些列:
- 代码(每行唯一)
- 标题
- 描述
- 老师-这应该是指向用户类的关系还是指针?
- 主题 - 这应该是主题类的关系、指针还是数组?
Subject 类有这些列:
- 标题
- 描述
-
(我是否需要向课程添加指针/关系
班级?)
如果只有一个相关对象(例如,课程只有一位教师),则使用指针。
如果您知道关系中的项目数量有限(通常少于 100 个,例如课程中的主题),那么使用数组会更加方便。
如果您认为一个关系中可能有 100 多个项目(例如某个学科的学生可能?),那么请使用关系或您自己的连接表。
如果您不仅需要关系,还需要有关它的信息,例如
,连接表会很方便
1 2 3 4 5 6 | StudentSubject - student : Pointer<User> - subject : Pointer<Subject> - started : Date - finished : Date - grade : Number |
注意:
提醒一句,如果您需要为一门课程处理多个教师怎么办?我的教育经验表明,总是允许多名教师。