首页 > 数据库技术 > 详细

企业实习项目数据库设计心得——Bug改不队

时间:2019-11-08 22:15:20      阅读:130      评论:0      收藏:0      [点我收藏+]

关于我们组企业实习数据库设计的部分,这个数据库的设计已经完成一个星期了,回顾整个设计。过程还是蛮艰苦的,发现了好多设计当中的缺陷。经过老师的指导,和组员之间的沟通交流才解决了这些问题。同时设计数据库过程中积累了许多许多经验。结合整个数据库设计过程,做一个我们组对数据库设计简单的总结

 一、设计CDM概念模型

1.首先前期我们小组先一块开会讨论数据库的设计方案,对实体集做了一个基本的整理。关于我们的企业实习项目:主要面向的用户主要包括三类人,第一种是在校学生,第二种是校内导师,第三种是企业导师。实习过程中,学生需要定期给老师提交一些表格,表格的信息需要一些实体来保存,还有一些通告,offer之类的实体也被提出,考虑是否要加进模型当中。

 

 2.对于整个实习系统的需求分析有清晰的认识之后,根据软件工程课上教的E-R图开始入手,还有数据库的课上学到的一些基本数据库知识。使用的主要工具就是powerdesigner,首先是学习如何创建概念模型,并且把概念模型转化成物理模型,生成数据字典。概念模型一共做了两版,第一版主要是出于对大家意见的汇总以我个人的思路制作的概念模型,出现的bug很多。

 

设计数据库模型当中主要出现的问题有:

1.重复的信息过多:这个主要出现在与学生相关的实体,表格里的信息大多与学生的基本信息相关,重复列在实体中会导致生成的物理模型里产生重复的信息。

2.个别的属性的长度不够合理。为了统一我把大部分char类型的属性的长度设置在50,而实际每个属性不一定需要这么长的长度,所以要根据实际情况缩短长度。还有每个表的主键一般就是编号这个属性id,这个的数据类型应该也是char,但由于参考了别的资料错误的写出来int型。

3.实体之间的联系设置的不合理,存在缺失情况。由于对实体的把握还是不够合理,精准,导致实体的联系出现错误,例如学生和表格之间的关系,不是只要一对一的关系,因为一张表格可能是个阶段性的表格,需要提交的次数不止一次。所以也有一对多的关系存在。还有例如班级这样的实体没有必要存在而删除实体,同时去掉相关的联系。而通告这样的表是由老师发布,就需要与老师建立一对多的关系。刚开始对老师需不需要区分身份也没有定下来,本来是只做了一个属性对身份进行标识就行了,但发现有些可能包含校内导师和企业导师两部分信息,所以还是需要对表格进行区分,由此对表的关系重新进行了梳理。

 4.在第二版制作的末尾,我还遇到了一个不确定的问题就是在我保证了实体之间不存在重复多余的属性的情况下,可能会导致有些实体当中可能没有一个具有辨识度的关键属性做主键,经过找老师沟通,得到的解决方案是把每个实体加一个没意义的编号做为表格的id,这个id就是一个实体的主键。

CDM成果部分截图:

技术分享图片

 

 

技术分享图片

二、接下来就是转化成PDM物理模型,生成就好了。截图如下:

技术分享图片

 

 技术分享图片

三、数据库设计心得体会:

数据库设计一开始听起来很有难度,很复杂,但使用powerdesigner就很容易对每个表的内容,和表与表之间的联系。这离不开小组大家共同努力,是所有人的智慧结晶。经过这次数据库设计,我和我的小伙伴们对数据库给概念模型如何制作有了一个全新的理解和认识。后面做项目迭代要加油啊,我们一定可以好好的完成这个项目的任务,做出一个完整的企业实习系统。

企业实习项目数据库设计心得——Bug改不队

原文:https://www.cnblogs.com/wwx261235/p/11823332.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!