我是一个网站开发人员,但我需要为我的网站包括一个数据库,但我是非常软弱,当它产生正确的数据库。我的网站是一个在线考试系统,用户通过从以下选项中选择答案来回答问题。
我想问的是,您会在答题表、学生答题表、问题表中包含哪些字段,我可能需要包含一个选项表,因为可能有不同类型的选项,例如对或错、a、b、c、甚至a、b、c、d、e。此外,一些问题可能通过选择一个选项而具有一个答案,而其他问题可能通过选择多个选项而具有多个答案。
谢谢你,请与我分享你的想法,因为我可以使用,然后帮助建立一个适合这个网站的数据库。
到目前为止,我的结构是:
问题表:
TestId (主键) QuestionId (主键) QuestionContent
答题表:
AnswerId((主键) AnswerContent AnswerCorrect TestId (fK) QuestionId(fK) )
StudentAnswer表:
会话ID(pK) QuestionId(主键)StudentAnswer(主键)StudentId(主键)
我没有实现options表,因为我不知道如何正确地实现它
发布于 2011-10-21 22:07:02
我建议也许可以向我们展示一下你到目前为止所拥有的,也许我们可以帮助你调整它。以下是我如何处理它,但我必须更多地考虑它,并了解更多细节:
使用所有信息(姓名、ID (某种类型的唯一标识符)、年份等)对学生表进行-Have。
对于问题和答案,我想可能会为每种类型的问题都有一个表,但进一步来说,最好的方法是只有一个问题表和一个用于所有类型问题的答案表。这是因为有数量可变的问题和答案的可能性,你不会提前知道。
-In问题表您将拥有“问题”(实际问题)、“问题类型”(真/假等)、“问题ID”(唯一ID)。
在answers表中,您将只有“-In”和"Answer ID“(这是最重要的,并且将是链接到上一表中的问题ID的外键)。
-Finally您将有一个结果表,其中包含“学生ID”(链接到学生表的FK)、“问题ID”(链接到问题表的FK)和学生答案的“答案”。
https://stackoverflow.com/questions/7849771
复制相似问题