数据库设计心得——薄饼香呼呼

根据我们小组进行数据库设计的实际情况,我们将数据库设计分为了两个阶段——准备与设计,在数据库设计的两个阶段,都有着各自需要注意的事项。下面,根据我们组在数据库实际设计过程中遇到的问题,给出自己的一些想法。

一、准备

1、设计工具

工欲善其事必先利其器,首先,我们当然要先准备好进行数据库设计的工具,而我们组选择的数据库设计工具自然是大多数人的选择——PowerDesigner。关于PowerDesigner的使用方法网上有着很多资料,在此就不再赘述。刚入门PowerDesigner时,推荐从CDM(概念数据模型,也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。)、PDM(物理数据模型)入手。

2、产品用例图

产品用例图作用有三:获取需求、指导测试、在其他工作流中起到指导作用。

 根据用例图,就可基本明确我们所需实现的功能以及人员之间的关系。

3、需求分析(文档)

需求分析是软件计划阶段的重要活动,也是软件生存周期中的一个重要环节。在这一环节,我们要考虑好我们需要实现的功能,基本明确功能和项目大体框架,为任务分配和项目设计做好铺垫。以我们的项目为例,对于教务系统的设计,在功能上自然是要实现“信息查询”、“课程选择”、“人员管理”等等,而数据库的设计自然是要围绕着这几个功能来设计。

4、E-R图

E-R图可以说是简化版的CDM,在进行具体的设计之前,应该设计好E-R图(作为CDM的原型),好进行CDM的设计。

二、设计

1、CDM的建立

CDM的建立,最为重要的就是确定“实体”,设计好“实体’的"属性","实体"的"属性"一定要既符合实际情况,也要符合当前功能设计的需要,有时还要考虑到未来拓展的需要来设计一些属性。

比如这里的学生表,就具备了学生应该具备的相关信息,而身份证号这个字段则是考虑到未来功能的拓展。

而建立CDM的第二步,就是确定好“实体”之间的“关系”;

比如,一间教室可以上多门课,而一门课可以在多间教室上课,一栋教学楼有着很多间教室,而一间教室只对应一栋教学楼。

注:CDM的命名要符合规范,但这一步可以用脚本完成。

2、PDM的建立

PDM可以由CDM转换得到,在PDM中,将把CDM中实体表中关系转换为关系表。如果自动生成的关系表不能满足我们的需要,可以再进行进一步的修改以满足需要。

三、总结

数据库的建立不是一件简单的事,要做好充足的准备,尤其是在正式还是建立表的时候,一定要仔细考虑表中的字段,建立好表之间的关系,表之间的关系很复杂,可以说是纷繁复杂。同时,由于需求在未来有可能发生变动,所以在考虑表中复杂结构与关系的时候,还要为以后的事做打算,而任何一个表结构上的漏洞,都有可能在未来引发严重的问题。而关于需求,则是数据库设计的根本,需求要是不对,那么围绕需求设计的数据库就会发生翻天覆地的变化,而需求的确定,则是需要与需求方进行密切的交流与沟通,组员之间更是要协调好分工,做好交流,一同探清数据库的详细设计方案。

猜你喜欢

转载自www.cnblogs.com/JoterGo/p/11823139.html