我需要为数据库制定一个方案。我的问题是,我有多个问题属于一个考试。这意味着:一个考试有多个问题。我不知道如何解决这个问题。我尝试使用“tabQuestions
”和“tabTest
”之间的表来修复它,但我似乎不是正确的方法。
我有以下表格:
tabTest: ID, Name, FK_Categorie, FK_Questions
tabQuestions: ID, Question, FK_Answer
tabAnswers: ID, Answer, FK_Solution
tabSolution: ID, Solution
非常感谢您的帮助! 卢卡
答案 0 :(得分:2)
您不需要FK_Question
中的tabTest
字段。您需要的是FK_Test
表中的tabQuestion
字段,用于存储问题所属测试的ID。
......如果我理解你的话......?
如果我理解正确,那么你也应该对模式的其余部分使用相同的内容。这意味着您需要在解决方案表中使用一个引用来存储解决方案所属的答案等。
答案 1 :(得分:2)
您需要为此创建两个表。一个用于exam (test)
,一个用于questions
。
表格考试(test
)应该有:
test_id, test_name
表question
应该有:
test_id (references test_id from test table),
question_id ,
question_text.
现在你可以有一个1:n的关系,其中一个测试有很多问题。
但不要,我再说一遍:不要,将多个问题存储在一行中。这违反了所有可能的良好数据库设计。您的选择,更新和插入几乎不可能写入。
This website似乎对你有很好的指导。