调查问卷管理系统开发 │ 数据库设计

举报
TiAmoZhang 发表于 2025/10/10 11:28:08 2025/10/10
【摘要】 首先对调查问卷管理系统的数据库进行概念结构设计,采用E-R模型进行建模。

01、数据库概念结构设计


首先对调查问卷管理系统的数据库进行概念结构设计,采用E-R模型进行建模。

1. 实体及其属性

对系统的分析可得:系统包括用户实体、问卷实体、问题实体、选项实体、问卷答案实体、选项答案实体、文本答案实体。

1) 用户实体

用户实体代表用户的信息,包括用户ID、用户名、密码、姓名、手机号、创建时间、备注等属性。

用户实体及属性图如图11-4所示。

5.png

图11-4用户实体及其属性图

2) 问卷实体

问卷实体代表调查问卷的信息,包括问卷ID、标题、创建人、是否匿名、创建时间、说明、限制、问卷类型、图标、链接、开始时间、结束时间、访问规则、密码、背景等属性。问卷实体及属性图如图11-5所示。

6.png
■ 图11-5问卷实体及其属性图

3) 问题实体

问题实体代表问卷中设置的问题信息,包括问题ID、标题、问题类型、说明、规定、选择类型、排列类型、排序依据、显示类型、测试、分数、问卷ID、创建人、图片、限制等属性。问题实体及属性图如图11-6所示。


7.png

■ 图11-6问题实体及其属性图

4) 选项实体

选项实体代表问卷中问题的选项信息,包括选项ID、问卷ID、问题ID、选项类型、选项内容、数值、答案、排序依据等属性。选项实体及属性图如图11-7所示。

8.png

■ 图11-7选项实体及其属性图

5) 问卷答案实体

问卷答案实体代表用户填写的调查问卷信息,包括答卷ID、答卷类型、答卷时间、提交时间、问卷ID等属性。问卷答案实体及属性图如图11-8所示。


9.png

■ 图11-8问卷答案实体及其属性图

6) 选项答案实体

选项答案实体及其属性图如图11-9所示。


10.png
■ 图11-9选项答案实体及其属性图

7) 文本答案实体

文本答案实体及其属性图如图11-10所示。


11.png

■ 图11-10文本答案实体及其属性图


2. 联系

E-R图表示了系统各实体及实体之间的联系,如图11-11所示。实体间的联系主要包括: 

(1) 包含1:  问卷与问题之间具有一对多的包含关系。一个问卷包含多个问题,一个问题属于一个问卷。

(2) 包含2:  问卷答案与问题之间具有多对多的包含关系。一个问卷答案包含多个问题,一个问题属于多个问卷答案;  一个问卷答案中的一个问题对应产生一个答案内容。

(3) 对应:  问卷与问卷答案之间具有一对多的对应关系。一个问卷对应多个问卷答案,一个问卷答案对应于一个问卷。

(4) 设置:  问题与选项之间具有一对多的对应关系。一个问题根据问题的类型对应一个或多个选项,一个选项对应一个问题。

(5) 管理:  用户与问卷之间具有一对多的管理关系。一个用户可以管理多个问卷,一个问卷被一个用户管理(不考虑管理员)。


12.png

■ 图11-11E-R图

02、数据库逻辑结构设计


根据数据库的概念结构,数据库的逻辑结构如表11-1所示,共由七张表组成。

表11-1数据库表


13.png

(1) 用户表(tb_user)用来存储用户的信息,表的各字段及属性如表11-2所示。


■ 表11-2用户表


14.png

(2) 问卷表(tb_survey)用来存储问卷的相关信息,表的各字段及属性如表11-3所示。其中,问卷表的创建人列(tb_survey.creator)与用户表的id(tb_user.id)通过外键关联。


■ 表11-3问卷表


15.png

(3) 问题表(tb_question)用来存储问题的相关信息,表的各字段及属性如表11-4所示。其中,问题表的问卷id列(tb_question.survey_id)与问卷表的问卷id列(tb_survey.id)通过外键关联。


■ 表11-4问题表


16.png

(4) 问题选项表(tb_question_opt)用来存储问题的各个选项信息,表的各字段及属性如表11-5所示。其中,问题选项表的问卷id列(tb_question_opt.survey_id)与问卷表的问卷id列(tb_survey.id)通过外键关联,问题选项表的问题id列(tb_question_opt.question_id)与问题表的问题id列(tb_question.id)通过外键关联。


■ 表11-5问题选项表


17.png

(5) 问卷答案表(tb_answer)用来存储调查问卷的答案信息,表的各字段及属性如表11-6所示。其中,问题答案表的问卷id(tb_answer.survey_id)与问卷表的问卷id(tb_survey.id)通过外键关联。


■ 表11-6问卷答案表


18.png

(6) 选项答案表(tb_answer_opt)用来存储问卷客观题的答案信息,表的各字段及属性如表11-7所示。其中,选项答案表的问卷id列(tb_answer_opt.survey_id)与问卷表的问卷id列(tb_survey.id)通过外键关联,选项答案表的问题id列(tb_answer_opt.question_id)与问题表的问题id列(tb_question.id)通过外键关联。


■ 表11-7选项答案表


19.png

(7) 文本答案表(tb_answer_txt)用来存储文本答案相关信息,表的各字段及属性如表11-8所示。其中,文本答案表的问卷id列(tb_answer_opt.survey_id)与问卷表的问卷id列(tb_survey.id)通过外键关联,文本答案表的问题id列(tb_answer_opt.question_id)与问题表的问题id列(tb_question.id)通过外键关联。


■ 表11-8文本答案表

20.png















【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。