Kev*_*vin 8 mysql database-design
这是我以前的一个后续问题.我们大三学生正在为大学做志愿工作的网站开发.我们正在使用PHP + MySQL技术.现在我主要负责使用MySQL的数据库开发,但我是一名MySQL设计师.我现在要求提供一些关于编写我的第一张表的提示,以获得它,然后我可以很好地处理其他表.问题是这样的,我们的网站要做的第一件事就是向用户提供调查,以便在他们想要使用巴士服务时收集他们的偏好.这就是我要开始数据库开发的地方.用户需求文档指定对于调查,应该有
客户方:
客户可以通过一组预定义的问题和答案获得调查,并且应该很容易填写
业务方面:
Survery信息.将被存储,输出和显示以供分析.
它听起来不是太多工作,我不需要关心任何PHP的东西,但我只是困惑:我应该创建一个名为"Survery"的表,或者两个表"Survey_business"和"Survey_Customer",以及如何数据库可以存储信息吗?如果你们能给我一些帮助以便我能够继续努力,我将不胜感激,因为第一步始终是最艰难和最重要的.谢谢.
我会使用多个表.一个用于调查本身,另一个用于问题.如果您想选择多项选择题,可能还有一个答案选项.另一个答案表,每个问题每个问题都有一个记录.当您考虑多种类型的答案(选择,填空单行,自由格式多行等)和显示选项(单选按钮,下拉列表,文本框,yada yada)时,复杂性会升级,但对于我认为,这是一个简单的多选择示例,只有一种渲染类型.
就像是:
-- Survey info such as title, publish dates, etc.
create table Surveys
(
survey_id number,
survey_title varchar2(200)
)
-- one record per question, associated with the parent survey
create table Questions
(
question_id number,
survey_id number,
question varchar2(200)
)
-- one record per multiple-choice option in a question
create table Choices
(
choice_id number,
question_id number,
choice varchar2(200)
)
-- one record per question per answerer to keep track of who
-- answered each question
create table Answers
(
answer_id number,
answerer_id number,
choice_id number
)
Run Code Online (Sandbox Code Playgroud)
然后使用应用程序代码:
作为数据库开发人员,您可以与Web应用程序开发人员一起设计查询,以便为每个任务填充和检索适当的数据.
| 归档时间: |
|
| 查看次数: |
730 次 |
| 最近记录: |