我正在开发一个应用程序,用于准备并生成学校测试。
目前,我面临以下困境——如何最有效地存储问题的答案?
目前,我有一个准备好的问题表,但是,由于我不会搜索问题的答案(测试不会仅用于打印在线),我对如何存储它们感到困惑。我有两个概念:
- 包含响应的各个变体及其属性的附加表
- 问题表的附加列,其中包含 JSON 结构(我正在考虑 JSON 或 BIGTEXT 类型)
问题的答案数量没有限制,所以我们假设一个问题有 N 个答案,我不会在数据库中搜索它们。
你怎么看待这件事? (PHP、Symfony 4 中的应用)
最佳答案
良好的数据库设计规则表明,在这种情况下,如果您有 1:N 关系,您应该创建一个表,其中包含问题的所有答案及其属性,就像您在第一点中所说的那样,然后使用外键链接两个表。
关于php - mysql - 非查询数据上的 JSON 类型或 JOINS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49266144/