我希望实现一个新的数据库,并将学生的考试数据和标记存储在数据库中。有任意数量的学生,每个学生都有任意数量的模块和相应的标记。我需要创建数据库,以便我能够查询数据库并返回学生姓名,然后是每个模块和相应的标记,然后转到下一个学生。这是因为我希望在PHP中显示一个粗体学生姓名列表,然后是一个模块及其标记表。
我最初考虑像这样组织表格:
|学生名称|模块|结果|
学生为每个模块添加一个新条目,只存储多个学生,但后来我不知道如何查询数据库并单独检索每个StudentName,然后能够遍历相应的模块和结果到将其存储在HTML表格中。
任何想法都将不胜感激
答案 0 :(得分:1)
答案 1 :(得分:1)
首先,您需要几张桌子。一张桌子做不到。为每种类型的对象创建一个表。在这种情况下,您需要一个学生表和一个模块表。
两个表都需要一个id列来标识行。在它们上创建主键。
学生表:Id,StudentName
模块表:Id,ModuleName
学生和模块之间存在多对多的关系(每个学生可以有多个模块,每个模块可以由许多学生选择)。多对多的关系需要一个单独的表。
你不清楚每个学生和模块是否有一个年级。如果只有一个成绩,最好的解决方案是在此关系表中包含成绩。
成绩表:Id,StudentId,ModuleId,成绩