扫一扫二维码
进群一起备考
查看更多当前 - 案例分析 - 数据库系统与缓存设计
简单
案例题
2020年11月第2题
简单
案例题
2020年11月第2题
#第二版教材
#必须掌握
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
[说明]
某企业委托软件公司开发一-套包裹信息管理系统,以便于对该企业通过快递收发的包裹信息进行统一管理。在系统设计阶段,需要对不同快递信息的包裹单信息进行建模,其中,邮政包裹单如图2-1所示:
分值(14分)
请说明关系型数据库开发中,逻辑数据模型设计过程包含哪些任务?该包裹单的逻辑数据模型中应该包含哪些实体?并指出每个关系模式的主键属性。
参考答案
逻辑数据模型设计过程包含的任务:(1)确定数据模型(2)将E-R 图转换成为指定的数据模型(3)确定完整性约束和(4)确定用户视图。
包裹单的逻辑数据模型中包含的实体:(1)收件人(主键:电话);(2)寄件人(主键:电话);(3)包裹单(主键:编号)。
凯恩解析
逻辑数据模型设计是数据库开发的核心步骤,主要任务是将需求分析阶段得到的 E-R 模型转化为关系模型。
其过程通常包含:①确定数据模型:选择关系模型作为描述工具;②将 E-R 转换为关系模式:识别实体及其属性,明确主键与外键;③确定完整性约束:如实体完整性(主键唯一非空)、参照完整性(外键依赖)、用户自定义完整性(资费、费用范围约束等);④确定用户视图:保证不同角色用户能够基于逻辑模型进行数据访问。
在本题所给的邮政包裹单中,至少应抽取三个实体:收件人、寄件人、包裹单。收件人与寄件人分别以电话为主键,因为电话在业务中往往是唯一标识用户的属性;包裹单则以编号为主键,唯一标识每一份快递记录。这种设计保证了实体之间的唯一性和完整性。
在关系模式层面,还应注意实体间的关联,例如包裹单与寄件人、收件人之间存在多对一的联系,可通过外键实现。通过这样的逻辑数据模型,可以支持系统的统一管理和高效查询。