数据库设计 - 分配提交

时间:2014-06-13 04:53:02

标签: database-design

我目前正在做一个旨在帮助学生和老师的个人项目。我计划的模块之一是作业提交系统。但是我不知道如何开始,因为这是我第一次为自己做这么大的项目。

以下是详细信息

  1. 每门课程都有一项作业
  2. 每位学生只能提交一次作业,他们只能提交他们所注册课程的作业。
  3. 提交提交日期
  4. 只有教师才能查看作业。
  5. 目前

    我知道将在模块中使用两个表

    **users**
    userID
    username
    password
    emailaddress
    
    **course**
    course_id
    course_name
    course_description
    

    我猜我还需要一张名为作业和教师的桌子。

    **assignments**
    assignment_id
    assignment_description
    assignment_due
    
    **assignments_submitted**
    submit_ID
    assignment_ID foreign key with assignments.assignment_ID
    studentID foreign key with students.StudentID
    time
    marks
    
    **teachers**
    teach_id
    teach_course Foreign key with course_id
    

    但是我可以想象出来,因为这是我第一次玩数据库,如果有更好的方法,我会很乐意为你们提供一些意见。

1 个答案:

答案 0 :(得分:0)

没有任何内容可以连接课程和作业 - 我会将course_id作为外键放在作业中,这样如果每门课程分配了' 1'规则永远改变你的数据库架构将保持不变。

由于用户和课程之间存在多对多关系,因此您需要一个关联类。

其他看起来非常像为学术机构建立数据库的标准方法。