某企业决定开发一个企业仓储管理系统,由李工承担系统的设计工作。该系统的网络连接如图2-1所示。[图2-1] 该企业有多个仓库,图2-1所示的中心数据库存储了各个仓库中每种货物的库存信息。每个仓库配备一台前端机,进出货物均由前端机辅助实现。管理员每天上班时,通过前端机从中心数据库的库存表中读取本仓库各种货物的库存数,每个仓库的当日业务数据也都暂存在前端机,当天业务结束后,再将前端机中存储的数据传输到主机进行存储与汇总。每个仓库可以存放多种货物,但同一种货物不能存放在不同的仓库中。每个仓库有多个管理员,但每个管理员只管理一个仓库。货物出库/入库时,由仓库管理员将货物的条码通过阅读器输入前端机中,货物数量的默认值为1,可以由管理员修改。前端机根据输入的货物信息,打印“出库/入库”清单。出库/入库单中同一种货物最多只出现一次,每份出库/入库单由流水号唯一标识。图2-2是一个出库单的实例。[图212] 管理员:01105出库/入库:出库该系统处理业务的过程如下。①初始化:前端机根据仓库号从货物表中读取本仓库中每种货物的货物编码、库存量、货物名称和单价;②登记出库/入库信息:由前端机存储每一笔“出库/入库”记录;③汇总:在每个工作日结束前汇总当日各种货物的“出库/入库”量至日汇总表;④更新库存表:根据当日的汇总信息更新货物的库存。李工经过分析,设计出如图2-3所示的关系模式。[图2-3]出入库单(流水号,出入库标志,管理员号,时间)出入库记录(货物编码,数量,流水号)日汇总表(日期,货物编码,数量,出入库标志)仓库(仓库号,仓库名,仓库电话)管理员(管理员号,姓名,仓库号)货物((a))注:时间格式为年-月-日时:分;日期格式为年-月-日。实体联系图的表示方法如图2-4所示,其中方框表示实体,菱形表示联系,联系的类型在实体与联系的边上标出。图2-5为与该系统对应的实体联系图。[图2-4] 4、[问题1]根据题意,补充图2-3中(a)处的空缺,即货物关系模式的属性。 5、[问题2]根据题意,补充图2-5中缺失的联系和联系的类型,使其成为完善的实体联系图。其中,联系名分别取名为联系1,联系2,联系3,……。 6、[问题3]写出每种关系模式的主键,将其填写在答题纸的对应栏内。
4、[问题1]货物编码,货物名称,单价,仓库号,库存量5、[问题2] 其中,联系名中的序号可任意排列。 若联系3建立在出入库单和日汇总表之间也正确,或者同时建立两个联系也正确。 6、[问题3]出入库单的主键:流水号出入库记录的主键:流水号,货物编码日汇总表的主键:日期,货物编码,出入库标志仓库的主键:仓库号管理员的主键:管理员号货物的主键:货物编码 4、[解析] [问题1]货物关系模式要保存货物的信息,因此需要有货物编码,这是货物的唯一标识。由于其他的关系模式中未出现货物名称和单价,因此关系模式需要有单价和货物名称两项。因为每一种货物只能放在一个仓库中,因此需要有仓库号信息。每天前端机获取货物的库存信息,还需要有库存量属性。因此,(a)处应填写:货物编码,货物名称,单价,仓库号,库存量5、[解析] 根据题目说明部分的描述,一张出/入库单上有多条出库记录,而每条出库记录只能在一张出库单上显示。一条出库记录只能表示一种货物的出库或入库,而一种货物可以出、入库多次,因此出入库单与出入库记录之间的联系是一对多(1:n),货物与出入库记录之间的联系是一对多(1:n)。同时,每条出/入库记录只能汇总到一条日汇总表记录,而一张日汇总表记录对应了多条出入库记录,因此日汇总表与出入库记录之间的联系是一对多(1:n)。由于每种货物只能放在一个仓库中,而一个仓库可以存放多种货物,因此仓库与货物之间的联系是一对多(1:n)。每个仓库可以有多个管理员,而一个管理员只能管理一个仓库,因此仓库与管理员之间的联系是(1:n)。ER图见参考答案。6、[解析] 分析出入库单(流水号,出入库标志,管理员号,时间)的属性可知,只有流水号可以标识唯一的一张出入库单,因此出入库单的主键为流水号。在出入库记录(货物编码,数量,流水号)中,流水号加货物编码可以唯一地标识一条出入库记录,因此出入库记录的主键为流水号和货物编码。在日汇总表(日期,货物编码,数量,出入库标志)中,同一货物可在多条记录中出现,在同一时间,相同货物可在多条记录中出现,因此日期、货物编码和出入库标志标识一张日汇总表的一条记录,即日汇总表的主键为日期、货物编码和出入库标志。显然,从管理的角度出发,一个仓库号唯一标识一个仓库,每名管理员被分配唯一的管理员号,每种货物都有分配了唯一的货物编码。