数据库概念结构设计和逻辑结构设计举例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库概念结构设计和逻辑结构设计举例

某超市公司要设计一个数据库系统来管理公司的业务信息,该超市公司的业务管理大致可分为三部分:

1、超市公司的仓库管理业务;

2、连锁商店的商品销售业务;

3、连锁商店的集团购买业务。

业务管理规则如下:

(1)该超市公司有若干仓库,若干连锁商店,供应若干商品;

(2)超市公司的业务员负责与供应商联系商品进货业务;

(3)购进的商品按类存放在仓库中,每个仓库有若干保管员;

(4)每个连锁商店有一个经理和若干收银员,每个收银员只在一个连锁商店工作。

(5)每个商品编号只有一个商品名称,但不同商品编号可以有相同的商品名称,每种商品可有多种销售价格;

(6)连锁商店实行会员制,通过会员卡收集顾客信息。顾客办理会员卡后,可享受一定的优惠;

(7)连锁商店要处理客户和销售员送来的集团购买大宗商品的订单,并根据库存情况交出货物同时开出发票,收到付款后应进行收款处理;

(8)连锁商店对大宗订货给予优惠,每种商品规定了不同订货数量和折扣。

一、设计局部ER模式

1、仓库管理子系统分ER图

根据管理规则(2),(3),与仓库管理子系统有关的实体包括:业务员、商品、供应商、仓库、职工。

因为每个业务员都可以与若干家供应商联系多项商品或进货业务,所以在业务员、商品、供应商之间存在一个三元的多对多的联系。仓库与商品之间存在多对多,仓库与职工之间存在一对多的联系。

2、根据规则(1)(4)(5)(6),与商品销售业务有关的实体有商店、商品、收银员、顾客。

因为每个收银员都要与多个顾客购买的多种商品发生业务联系,所以在收银员、商品与顾客之间存在一个多对多的联系。商品与商存在多对多的联系,商店与收银员之间存在一对多的联系。

3、连锁商店的集团购买业务是单独处理的,此业务处理主要是围绕“订单”和“应收帐款”的处理。且这两项处理用的数字,是许多数据流共享的数据。因此可以确定“订单”、“应收帐款”为实体。

因为每张订单有订单号、若干头信息和订单细节组成。订单细节又由商品号、数量等来描述。因此订单细节就不能作为订单的属性处理,而应该上升为实体。一张订单可以订若干商品,所以订单与订单细节两个实体之间是一对多的联系。由此,原订单和商品的联系实际上是订单细节和商品的联系。每条订单细节对应一个商品描述,订单处理从中获得当前商品单价、重量等信息。

由于连锁商店对集团的大宗订货给予优惠,每种商品都规定了不同的订货数量的折扣,应增加一个“折扣规则”实体来存放这些有关信息。

二、设计全局ER图

任务:把分ER图集成在一起。(1)合理地消除各分ER图的冲突;(2)消除不必要的冗余。

如:连锁商店的所有商品,都是通过公司的仓库调配进货的,所以商品和仓库之间的多对多联系,以及商品和商店之间的多对多联系,可以合并成三个实体间的多对多联系。

把ER图转换成关系模式

1、职工(工号,姓名,性别,仓库号)

2、仓库(仓库号,地址,电话,负责人)

3、商店(商店号,商店名,地址,电话,经理)

4、商品(商品号,商品名,规格,单价,产地)

5、顾客1(顾客号,姓名,地址,电话)

6、收银员(工号,姓名,性别,商店号)

7、业务员(工号,姓名,性别,电话)

8、供应商(供应商号,名称,地址,帐号,电话)

9、进货1(商品号,供应商号,业务员,进货量))

10、进货2(商品号,商店号,仓库号,数量))

11、销售(商品号,收银员,顾客号,销售额)

12、顾客2(顾客号,姓名,地址,电话,信贷状况,帐目余额)

13、应收帐款(顾客号,订单号,发票号,应收金额,支付日期,支付金额)

14、订单(订单号,顾客号,订货项数,订货日期,交货日期)

15、订单细节()

16、商品描述()

17、折扣规则()

相关文档
最新文档