1.背景
水作为生命的源泉,亦作为每个人每日摄入量最多的物质,重要长度不言而喻,而水质健康则将直接影响到我们的身体健康,长期饮用水质不好的水,将引发一系列疾病,例如肾结石,胃炎等等。所以我们设计该系统的初衷就是要实时检测饮用水的TDS(TOTAL DISSOLVED SOLIDS),并展示给用户,让用户喝的放心。
2.数据库设计意义
一开始,我还因为没有开始写代码略显着急,没有意识到设计好数据库的重要性,不过还是在组长的提议没有着急写代码,到现在写代码时就发现数据库设计的重要性,一个良好的数据库可以节省数据的存储空间,能够保证数据的完整性,方便进行数据库应用系统的开发。而如果没有设计好数据库会浪费存储空间,业务逻辑的实现也会变得困难。设计一个好的数据库应该大致分为三个部分
一.需求分析部分。
这也是数据库设计最重要的部分,要将需求分析研究透彻,对业务逻辑的顺理起非常重要的作用。这一部分要做的大致工作就是,收集信息,标识对象,标识对象属性,标识对象关系。
二.逻辑设计部分
该部分要将业务逻辑完全模拟一遍,列出数据库所需的表和大致的属性,并研究是否满足所有业务。再将er图画出来并转化为表格。最后在应用三大范式规范。
三.物理设计模板
a. 数据库物理设计的目标是尽可能优化性能。
b. 物理设计阶段,表结构可能需要进行重构来满足性能上的需求,这被称为反范式化。
c. 反范式化的步骤包括:
I. 辨别关键性流程,如频繁运行、大容量、高优先级的处理操作
II. 通过增加冗余来提高关键性流程的性能
III. 评估所造成的代价(对查询、修改、存储的影响)和可能损失的数据一致性
3.数据库设计过程
设计数据库是我们将数据库模块化,将功能集群,最后将每个模块拼接,以下是我们设计的几个模块
3.1地区模块
3.2直饮机模块
3.3水表
3.4系统告警产生工单
3.5用户告警产生工单
3.6维修人员操作工单
3.7维修人员月工资结算
3.8全局ER图
4.数据库设计心得
因为是第一次做项目,项目设计数据库和课程数据库的设计还是很有差别的,刚开始做好需求的分析真的是非常重要的,到后面做原型界面也都离不开需求分析。后来原型设计完。数据库第一步就是为了实现原型界面上的功能,所以先不考虑三大范式,只为功能服务,等可以实现所有功能之后,再将表,字段等做进一步的优化,包括三大范式的赋用。在数据库的初步设计过程中,我们组的整体进展还可以,在设计数据库和编写sql代码时,用powerdesigner这种可以通过绘制CDM可以转化为PDM与导出数据字典,同时也可生成对应的sql语句的工具就会解决这些问题;同时,使用Navicat与sqlyog这种图形化界面操作数据库的软件也比命令行方便很多。
标签:直饮水,范式,管理系统,数据库,模块,设计,心得,代码,三大 From: https://www.cnblogs.com/2667692081a/p/16859163.html