我正在计划我的数据库设计为 3 类不同的客户(目前至少 3 个)提供 3 组多个问题,每组包含大约。100 个问题,等待他们的答案被保存在数据库中。
这些问题都在必填的问卷中,这对我的工作来说是非常重要的材料,然后将它们全部作为电子邮件发送给我自己是不可替代的。我不是这个领域的专家。我不确定存储、检索和管理它们的最佳方法是什么。
请查看我的数据库设计和建议以获得更好的方法。
表格:问题
表:问卷
我有3个主要问题:
假设问题只有一个正确答案,并且每组测试的可能答案不必不同,您可以执行以下操作(这是一个粗略的想法,我可能会在(或过度)设计一些概念):
问题:id,question_text, Correct_answer_id(FK到answer.id)
答案:id,answer_text
Question_possible_answer(question_id(FK到问题),answer_id(FK到anwer))
测试:id,test_name
测试问题:id,test_id(FK到测试) , Question (FK to Question)
QUESTIONNAIRE (id, customer_id, test_id, Questionnaire_date) -- 我假设客户可能多次通过测试,因此 (customer_id, test_id) 上没有唯一键,而是 (customer_id, test_id, Questionnaire_date)
QUESTIONNAIRE_Answer (questionnaire_id (FK 到 QUESTIONNAIRE), test_question_id(FK 到 Test_question),answer_id(FK 到 Answer))
现在,对于每个问题,您在 Question_possible_answer 表中添加一些可能的答案,然后创建一个新测试并使用问题填充 Test_question 表。您通过链接测试和客户来创建一个新的问卷,该客户的所有答案都将转到 QUESTIONNAIRE_Answer 表。