关于数据库表结构设计
想做一个测试系统,目前碰到问题是不知如何设计表。
如问题分为单选、多选、判断、简答题、填空题
比如判断题的选项就是问题本身
那么所有问题用一张表,然后用类型做区分?那么他们的正确答案放哪里?
另外选项如何做表,有单选、多选、感觉思路也乱,希望有经验的帮忙整理
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(4)
注定孤独终老2022-09-12 00:15:06
填空题假如有标准答案则可以用表来判断对错,简答题正常来说是无法用表来控制的,因为没有标准答案。建议测试系统只有选择题和判断题
选择题(单选和多选)、判断题可以用两张表来控制,一张问题主表,一张答案表,通过对应关系来处理答案;
question
qid content ture_answer all_answer qtn_type
1 水果有哪些? 2,3 1,2,3,4 1(选择题)
2 1+1=2对么? ture ture/false 2(判断题)
3 中秋节是_月_日 5,6 空 3(填空题)
answer:
sid content
1 黄瓜
2 苹果
3 香蕉
4 西红柿
5 八
6 十五
根据question表中的类型字段来分别处理:
1. 选择题判断对错的时候可以使用find_in_set函数来查询true_answer字段是否正确;
2. 判断题可以直接判断true/false
3. //填空题必须有标准答案
根据空白序号来跟正确答案匹配判断是否正确。
以上只是问题和答案的关系表。另外你还需要一张学生答题的记录表来记录成绩。具体设计不再写了,假如有需求可以再帮你。
~没有更多了~
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
单独建一个答案表