相关疑难解决方法(0)

使用PHP和MySQL开发'测验'Web应用程序的数据库设计

所以,我正在尝试学习PHP和MySQL(我对两者都有基本的了解;我已经阅读了Head First SQL和Head First PHP和MySQL的前半部分)并且我认为巩固我的知识的最好方法是通过建立而不是阅读.

考虑到这一点,我想创建一个连接到服务器上的MySQL数据库的基本网页.我将构建一个基本的HTML表单,并允许用户输入基本信息,例如:last_name,first_name,email,birthday,gender.

我的问题是我不知道如何设计一个记录基本测验结果的数据库 - 我只想要5个多项选择题.最后,我想显示用户的结果与之前用户的结果.

如果你能帮助我理解如何为一个5个问题的测验设计表格,我会很感激.谢谢!

php mysql database forms database-design

18
推荐指数
3
解决办法
4万
查看次数

在数据库中存储多项选择测验 - 决定架构

我正在尝试实施多项选择测验,并希望将我的所有问题和答案存储在SQLite数据库中.我会有很多问题,每个问题都会有2个或更多可能的答案要显示.

我的问题是,我应该如何将问题和答案存储在数据库中?我有两个架构的想法(粗体的主键)

  1. 作为(多对多)

问题(questionID:int,questionString:String,correctAnswerID:int)

答案(answerID:int,answerString:String)

questions_and_answers(questionID,answerID)

2.

问题(questionID:int,questionString:String,correctAnswerID:int)

答案(answerID:int,answerString:String,questionID:int 外键)

我不确定哪一个更好,或者是否有另一种方式?

可能questions_and_answers会变得非常大,导致检索时间长和内存问题?然后,我假设question_and_answers将在主键上编入索引.在第二个模式中,answers将被索引answerID而不是questionID?意味着搜索时间会增加,因为必须搜索整个表格?

可能有大约10,000 - 20,000个答案.(测验可能在移动设备上运行,问题需要"立即"显示)

注意:我不认为问题之间的答案会有很多重叠.考虑到questions_and_answers表格所需的额外空间,我认为重叠量不会意味着存储的数据更少

sql database database-design

13
推荐指数
1
解决办法
1万
查看次数

标签 统计

database ×2

database-design ×2

forms ×1

mysql ×1

php ×1

sql ×1