《数据库概念结构设计进行阶段全解析》
一、需求分析阶段
数据库概念结构设计的第一步是需求分析,这一阶段主要是与用户进行深入沟通,全面了解用户对数据库系统的各种需求。
(一)收集信息
图片来源于网络,如有侵权联系删除
1、业务流程
- 详细了解企业或组织的业务运作流程是至关重要的,在一个电商系统中,要清楚从用户下单、库存管理、物流配送,到售后处理等一系列环节,通过对业务流程的梳理,可以确定在数据库中需要存储哪些数据以及这些数据之间的关联关系。
2、用户需求
- 包括不同类型用户(如管理员、普通用户、供应商等)的需求,管理员可能需要对用户信息、商品信息、订单信息等进行管理操作;普通用户主要关注商品查询、下单、查看订单状态等;供应商则关心商品库存更新、订单接收等,了解这些需求有助于确定数据库的功能需求。
(二)分析需求
1、功能需求分析
- 明确数据库需要实现的功能,如数据的存储、查询、更新、删除等操作,对于一个图书馆管理系统,需要实现对图书信息的存储(包括书名、作者、出版社等),读者信息的管理(姓名、借阅证号、联系方式等),以及借阅和归还业务的处理功能。
2、数据需求分析
- 确定数据库中需要存储的数据类型、数据量以及数据之间的关系,在学校的成绩管理系统中,需要存储学生的基本信息(学号、姓名、班级等)、课程信息(课程号、课程名、学分等)以及学生的成绩信息(学号、课程号、成绩),并且成绩信息与学生信息和课程信息存在关联关系。
二、概念结构设计阶段
(一)数据抽象
图片来源于网络,如有侵权联系删除
1、分类与聚集
- 将现实世界中的复杂事物进行分类和聚集,形成实体集,在医院信息管理系统中,医生、患者、药品等可以分别看作不同的实体集,医生实体集可以包含医生的姓名、职称、科室等属性;患者实体集有姓名、年龄、性别、病症等属性;药品实体集包括药品名称、规格、功效等属性。
2、概括
- 对实体集进行概括,找出它们的共性,在医院系统中,医生和护士都属于医院的工作人员,可以概括出一个工作人员实体集,然后通过特殊化将其分为医生和护士两个子实体集,这样可以减少数据冗余,提高数据库的设计效率。
(二)确定实体与关系
1、识别实体
- 依据需求分析的结果,准确识别数据库中的实体,在一个企业的人力资源管理系统中,员工、部门、职位等都是实体,员工实体包含员工的基本信息、工作经历等;部门实体有部门名称、部门职能等;职位实体包含职位名称、职位要求等。
2、定义实体关系
- 确定实体之间的关系类型,如一对一、一对多、多对多关系,在人力资源管理系统中,一个部门可以有多个员工,这是一对多的关系;一个员工只能在一个部门工作(不考虑兼职情况);而一个员工可以具备多个职位技能,一个职位技能可以被多个员工掌握,这是多对多的关系。
三、概念模型表示阶段
(一)E - R图(实体 - 关系图)绘制
图片来源于网络,如有侵权联系删除
1、绘制实体
- 使用矩形表示实体,在矩形框内标注实体名称,在物流管理系统中,绘制“仓库”“货物”“运输车辆”等实体矩形框。
2、绘制关系
- 用菱形表示实体之间的关系,在菱形框内标注关系名称,并使用连线将相关实体与关系连接起来,连线上标注关系的类型(1:1、1:n或m:n),如仓库与货物之间存在存储关系,可能是一对多关系(一个仓库可以存储多种货物),就在两者之间绘制相应的连线和标注。
(二)概念模型的评审与优化
1、评审
- 组织相关人员(包括用户、数据库管理员、系统开发人员等)对绘制好的概念模型(E - R图)进行评审,评审的内容包括实体和关系的准确性、完整性以及是否符合业务需求等,在评审物流管理系统的概念模型时,要检查仓库与货物的存储关系是否准确反映了实际的业务逻辑,是否有遗漏的实体或关系等。
2、优化
- 根据评审结果对概念模型进行优化,如果发现存在数据冗余或关系不合理的情况,要进行调整,如果在物流管理系统中发现货物的重量属性既在货物实体中又在仓库与货物的存储关系中重复出现,就需要调整设计,将重量属性只保留在货物实体中,以减少数据冗余,提高数据库的性能。
评论列表