某企业拟构建一个高效、低成本、符合企业实际发展需要的办公自动化系统。工程师小李主

考试题库2022-08-02  54

问题 某企业拟构建一个高效、低成本、符合企业实际发展需要的办公自动化系统。工程师小李主要承担该系统的公告管理和消息管理模块的研发工作。公告管理模块的主要功能包括添加、修改、删除和查看公告。消息管理模块的主要功能是消息群发。小李根据前期调研和需求分析进行了概念模型设计,具体情况分述如下。[需求分析结果]1该企业设有研发部、财务部、销售部等多个部门,每个部门只有一名部门经理,有多名员工,每名员工只属于一个部门。部门信息包括:部门号、名称、部门经理和电话,其中部门号唯一确定部门关系的每一个元组。2员工信息包括:员工号、姓名、岗位、电话和密码。员工号唯一确定员工关系的每一个元组;岗位主要有经理、部门经理、管理员等,不同岗位具有不同的权限。一名员工只对应一个岗位,但一个岗位可对应多名员工。3消息信息包括:编号、内容、消息类型、接收人、接收时间、发送时间和发送人。其中(编号,接收人)唯一标识消息关系中的每一个元组。一条消息可以发送给多个接收人,一个接收人可以接收多条消息。4公告信息包括:编号、标题、名称、内容、发布部门、发布时间。其中编号唯一确定公告关系的每一个元组。一份公告对应一个发布部门,但一个部门可以发布多份公告;一份公告可以被多名员工阅读,一名员工可以阅读多份公告。[概念模型设计]根据需求分析阶段收集的信息,设计的实体联系图(不完整)如图1所示。[逻辑结构设计]根据概念模型设计阶段完成的实体联系图,得出如下关系模式(不完整):部门((a),部门经理,电话)员工(员工号,姓名,岗位号,部门号,电话,密码)岗位(岗位号,名称,权限)消息((b),消息类型,接收时间,发送时间,发送人)公告((c),名称,内容,发布部门,发布时间)阅读公告((d),阅读时间)1、根据问题描述,补充4个联系,完善图1所示的实体联系图。联系名可用联系1、联系2、联系3和联系4代替,联系的类型分为1:1、1:n和m:n(或1:1、1:*和*:*)。2、(1)根据实体联系图,将关系模式中的空(a)~(d)补充完整。(2)给出“消息”和“阅读公告”关系模式的主键与外键。3、消息和公告关系中都有“编号”属性,请问它是属于命名冲突吗?用100字以内文字说明原因。

选项

答案

解析 1、联系名称可不做要求,但不能出现重名。2、(1)(a)部门号,名称(b)编号,内容,接收人(c)编号,标题(d)公告编号,员工号 ?(注:编号,员工号也正确)(2)消息关系模式的主键:编号,接收人外键:接收人、发送人阅读公告关系模式的主键:公告编号,员工号外键:公告编号,员工号  3、不属于命名冲突。因为这两个属性分别属于两个不同的关系模式,可以通过“关系名.属性名”区别,即可以用“消息.编号”和“公告.编号”来区别。 本题考查数据库概念结构设计及概念结构向逻辑结构转换的过程。此类题目要求考生认真阅读题目对现实问题的描述,经过分类、聚集、概括等方法,从中确定实体及其联系。题目已经给出了4个实体,需要根据需求描述,给出实体间的联系。根据题意“一个员工只对应一个岗位,但一个岗位可对应多名员工”,可以得出员工与岗位之间的对应联系类型为n:1。由“一条消息可以发送给多个接收人,一个接收人可以接收多条消息”,可以得出员工与消息之间的收发联系类型为1:n:m。由“一份公告对应一个发布部门,但一个部门可以发布多份公告”,可以得出部门与公告间的所属联系类型为1:n。由“一份公告可以有多个员工阅读,一个员工可以阅读多份公告”,可以得出公告与员工之间的阅读联系类型为n:m。完整的E-R图如下:(1)根据题意,完整的关系模式如下:部门(部门号,名称,部门经理,电话)员工(员工号,姓名,岗位号,部门号,电话,密码)岗位(岗位号,名称,权限)消息(编号,内容,接收人,消息类型,接收时间,发送时间,发送人)公告(编号,标题,名称,内容,发布部门,发布时间)阅读公告(公告编号,员工号,阅读时间)(2)消息关系模式和阅读公告关系模式的主键和外键的分析如下:根据题意,消息关系模式的主键为(编号,接收人)。由于接收人、发送人都应参考员工关系的员工号,因此接收人、发送人为消息关系的外键。根据题意,阅读公告关系模式的主键为(公告编号,员工号)。外键为公告编号,员工号。因为公告编号应参考公告关系的编号,而编号是公告关系的主键,所以公告编号是阅读公告关系的外键;又因为员工号应参考员工关系的员工号,而员工号是员工关系的主键,所以公告关系的员工号为外键。不属于命名冲突。因为这两个属性分别属于两个不同的关系模式,可以通过“关系名.属性名”区别,即可以用“消息.编号”和“公告.编号”来区别。
转载请注明原文地址:https://tihaiku.com/congyezige/2423211.html

最新回复(0)