数据库原理与应用 第 13 章 · 第四节
课程第 13 章第四节 销售需求抽实体定联系销售图消冲突全局图 版式
第 13 章 数据库概念结构设计和逻辑结构设计 · 第四节

案例:商品销售与全局合并

本 节 知 识 点
  1. 18销售部是这么描述业务的
  2. 19销售这边挑出五个实体
  3. 20一个 m:n,三个方向要看清
  4. 21商品销售业务的局部 E-R 图
  5. 22两张图合起来,先把冲突消掉
  6. 23合并之后的全局 E-R 图
18
第 13 章 · 第四节

销售部是这么描述业务的

顾客下单,一单可以买好几样,寄到一个收件地址,由一家快递送。

第 18 页课件

重 点

一张订单卡片上印着的每一样东西,都要在图上找到落脚点。

想一想

订单状态该是属性还是实体?

19
第 13 章 · 第四节

销售这边挑出五个实体

用户、销售商品、订单、地址、物流,比采购那边多一个。

第 19 页课件

重 点

地址单独成实体,因为一个人可以存好几个收件地址。

知道更多

课件这一页管物流编号叫信息编号,图上写的是物流编号。

想一想

地址要是不独立,会重复成什么样?

20
第 13 章 · 第四节

一个 m:n,三个方向要看清

商品对订单多对多,订单对地址、地址对用户、订单对物流各是一对多。

第 20 页课件

重 点

销售单价和销售数量挂在包含这个菱形上,不在商品也不在订单。

知道更多更正

订单和地址那句写成 1:n,按下一句解释和图上标注应是 n:1。

想一想

为什么一个地址能给多个订单用?

21
第 13 章 · 第四节

商品销售业务的局部 E-R 图

订单是中心,三条线分别连着商品、地址和物流。

第 21 页课件

重 点

用户不直接连订单,它经由地址挂上来,这一点后面要用到。

知道更多更正

订单和物流两头图上都标着 1,正文说的却是 1:n,以正文为准。

想一想

订单不记用户编号,行不行?

22
第 13 章 · 第四节

两张图合起来,先把冲突消掉

同一批货两个名字,属性组成也不一样,改名再取并集。

第 22 页课件

重 点

采购商品和销售商品说的是同一批货,合并后统一叫商品。

知道更多更正

课件把两个实体名说反了,采购业务里的才叫采购商品。

打个比方

同一个属性在这一章出现过三种叫法,这本身就是命名冲突。

想一想

同名异义要怎么消?

23
第 13 章 · 第四节

合并之后的全局 E-R 图

七个实体六个联系,供应和包含的属性都加了前缀。

第 23 页课件

重 点

供应的单价和包含的单价撞名了,所以改成供应单价和销售单价。

上机做

上机三第 1 题 照着这张图建表

练一练

全局图上用户和订单没有直接联系,怎么知道一单是谁下的?
  1. A查不出来
  2. B顺着订单到地址、地址到用户绕一圈
  3. C看提交时间
  4. D用户编号藏在订单状态里
答案 B

订单连地址,地址连用户,两跳就找到人。代价是换收件人订单就换了主人。

保山学院·人工智能教研室·曹鼎鼎