编写目的
该博客是app在前期开发阶段针对用户所进行的数据库设计,通过ER图,数据字典,数据流图来对该软件的数据库开发进行设计,并且附上部分源代码进行参考。
定义
ER图:E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型UML图:UML-Unified Model Language 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。
UML的定义包括UML语义和UML表示法两个元素。数据字典:数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。
数据流图:简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据字典
字段名 | 中文名 | 数据类型 | 主键 | 外键 | 说明 |
user_id | 用户账号 | int | PK | 不能为空 | |
password | 用户密码 | char | 不能为空 | ||
status | 身份 | char | 不能为空 | ||
level | 会员等级 | char | 不能为空 |
字段名 | 中文名 | 数据类型 | 主键 | 外键 | 说明 |
q_id | 题目编号 | int | PK | 不能为空 | |
question | 题目 | char | 不能为空 | ||
level | 难度级别 | char | 不能为空 | ||
anser | 答案 | char | 不能为空 |
字段名 | 中文名 | 数据类型 | 主键 | 外键 | 说明 |
m_id | 管理员id | int | PK | 不能为空 | |
q_id | 题目编号 | int | FK | 不能为空 | |
user_id | 用户账号 | int | FK | 不能为空 |
ER图设计
数据流图
数据库源代码设计
CREATE TABLE `user` (
`user_id` int NOT NULL,
`password` char(20) NOT NULL,
`status` char(20) NOT NULL,
'level' char(20) NOT NULL,
PRIMARY KEY (`user_id`)
);
CREATE TABLE `question` (
`q_id` int NOT NULL,
`question` char(20) NOT NULL,
`anser` char(20) NOT NULL,
`level` char(20) NOT NULL,
PRIMARY KEY (`q_id`)
);
CREATE TABLE `manager` (
`m_id` int NOT NULL,
`q_id` int NOT NULL,
`user_id` int NOT NULL,
PRIMARY KEY (`m_id`)
);