手机销售系统数据库论文Word文件下载.docx
《手机销售系统数据库论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《手机销售系统数据库论文Word文件下载.docx(60页珍藏版)》请在冰豆网上搜索。
该系统所创建的五个数据流图如下图1-1至图1-5所示:
图1-1顶层数据流图
图1-2第一层数据流图
图1-3第二层销售数据流图
图1-4第二层盘存数据流图
图1-5第二层进货数据流图
1.2.2数据字典的建立
数据字典是建立数据库的数据基础,是经过多方面的数据采集、数据筛选分析所得,是系统开发的重要步骤,在数据库设计中占据着非常重要的地位。
常见的数据字典由数据项、数据结构、数据流、外部实体、数据存储及处理过程等组成。
由于数据繁琐,在此不再赘述。
详细数据项、数据结构、数据流、外部实体、数据存储及处理过程见表1-6至表1-10。
数据流的描述:
表1-6手机销售系统数据流表
数据流编号
数据流名称
简述
数据流来源
数据流去向
数据流组成
数据流量
高峰流量
F1
订货单
采购部发给供应商的采购单
采购部
供应商
订单编号+商品名称+购买数量+进价
30次/月
60次/月
F2
发货单
供应商发出的收货单
发货单编号+商品名称+价格+数量+日期
15次/月
F3
不合格单
采购部验货后对不合格产品的发出的不合格单
不合格单编号+商品名称+数量+日期
F4
退货单
采购部向供应商发出的退货单
供应商退货记录
退货单编号+商品名称+数量+金额
F5
合格单
验货模块对合格产品发出的合格单
仓管部
合格单编号+商品名称+数量+日期
F6
入库单
进库模块对可入库的商品多发出的入库单
库存台帐、库存信息
入库单编号+产品名称+数量+日期
F7
打折销售单
库存检查滞销商品的清单
销售部
商品编号+数量+折扣+日期
F8
顾客订单
顾客对要买的商品开出订单
顾客
订单编号+产品名称+产品价格+数量+日期
F10
销售单
销售模块向顾客发出销售单
销售单编号+产品名称+产品价格+数量+日期
F11
出库单
仓管部在销售部提取货物时开出的出库单
销售部、库存台账
出库单编号+产品名称+数量+日期
F12
顾客退单
顾客对不要的商品发出退单
确认退单模块
退货单编号+产品名称+产品价格+数量+日期
F13
盘存清单
存货清查模块对库存的商品清查后开出盘存清单
库存台账
盘存清单编号+产品名称+产品价格+数量+进货日期
F14
供应货物不合格确认退货
F15
实物清单
库存管理员对库存的商品进行盘点开出实物清单
库台存帐
实物清单编号+产品名称+产品价格+数量+进货日期
F16
报损单
存货清查模块对商品清查后开出报损单
报损单编号+商品名称+数量+报损金额+日期
表1-7手机销售系统数据结构表
数据结构编号
数据结构名
数据结构含义
组成
DS-1
Supplier
Sno、Sname、Sadd、Spho
DS-2
Customer
Cno、Cname、Cpho、Cadd
DS-3
Goods
手机
Gno、Gname、Gprice、Sprice、Gaccount
DS-4
Storage
仓库
Stno、Stname、Maxstore
DS-5
DeliveryForm
Dfno、Proname,Proprice,Quantity
、Date、
DS-6
PurchaseForm
购买单
PFNno、Proname,Proprice、Qantity、Date
DS-7
DamageList
DLno、Proname、Qantity、Damgprice,Date
DS-8
Staff
职员
Sfno,Sfname,Duty,Salary,Contact,Stnum
DS-9
ODO
ODno、Proname、Qantity,Date、
DS-10
StandardForm
SDno、Proname、Qantity,Date
DS-11
UnStandardForm
UNFno、Proname、Qantity,Date
DS-12
GetForm
进货单
Getno、Proname、Qantity、Proprice
DS-13
ReturnForm
RetNno、Proname、Qantity、Proprice、Date
DS-14
GodowmForm
GoFno、Proname、Qantity,Date
DS-15
SellForm
Selno、Proname、Qantity、Proprice,Date
DS-16
ProductForm
PrFno、Proname、QantityProprice、GetDate
DS-17
KeepForm
KeFno、Proname、QantityProprice、GetDate
DS-18
AccountForm
Gno、Quantity、account、date
表1-8手机销售系统数据项表
数据项编号
数据项名
数据项含义
与其他数据项关系
类型
长度
取值范围
DI-1
Sno
供应商编号
Varchar
8
DI-2
Sname
供应商名称
20
DI-3
Sadd
供应商地址
60
DI-4
Spho
供应商电话
13
DI-5
Cno
顾客的编号
DI-6
Cname
顾客姓名
DI-7
Cpho
顾客电话
DI-8
Gno
产品编号
DI-9
Gname
产品名称
DI-10
Gprice
产品价格
Float
0~10000
DI-11
Gdate
产品生产日期
Date
DI-12
Stno
仓库编号
DI-13
Stname
仓库名称
DI-14
StPho
仓库联系方式
DI-15
Dfno
发货单编号
DI-16
Proname
DI-17
Proprice
金额
DI-18
Quantity
数量
Int
DI-19
日期
DI-20
PFno
购买单编号
DI-21
DLno
报损单编号
DI-22
Damgprice
报损金额
Number
DI-23
Inno
库存管理员编号
DI-24
Inname
库存管理员姓名
DI-25
InPhon
库存管理员联系方式
DI-26
Wkno
库房管理员编号
DI-27
Wkname
库房管理员姓名
DI-28
WkPhon
库房管理员联系方式
DI-29
ODno
出货单编号
DI-30
SDno
合格单编号
DI-31
UNFno
不合格单编号
DI-32
Getno
进货单编号
D1-33
GoFno
入库单号编号
D1-34
销售单编号
D1-35
PrFno
实物清单号
D1-36
GetDate
进货日期
D1-37
KeFno
盘存清单编号
D1-38
AcFno
打折销售单编号
表1-9手机销售系统处理逻辑的描述表
处理逻辑编号
处理逻辑名称
输入的数据流
处理
输出的数据流
处理频率
P1.1
验收货品
采购部检验来货
商家发货单
根据发货单检验商品
不合格单、合格单
P1.2
进库
仓管部将进货入库
根据合格单将商品入库
P1.3
退货
检验不合格退去
确定退货
P1.4
统计处理
采购部统计缺货信息
缺货信息
统计缺货信息制成订单
订单
P2.1
销售货物
销售部销售商品
根据订单提货并发货
销售单、提货单
P2.2
顾客退货
销售部处理退货单
将退货入库并记录
入库单、退货信息
P2.3
确认退单
接收退货并确认
根据退单检验商品
P3.1
库存检查
仓管部定期检查
仓管部根据清单查出低于最低库存量商品以及库存时间过长商品
缺货单、打折销售单
P3.2
盘存
仓管部定期检查货品
仓管部定期检查净库存量
P3.3
报损
仓管定期检查
是无情的那
仓管部查取损坏物品
表1-10数据存储的描述表
数据存储编号
数据存储名称
数据存储组成
相关联的处理
S-1
库存信息
各类商品的存储现状
仓库编号、手机编号、出库日期、入库日期、最低库存、最高库存、库存数量、商品状态、商品进价、商品售价、受损数量
P1.2、P2.1、P2.3、P2.3、
P3.1、P3.2、P3.3、
S-2
库存账目
商品入库、提货、退货、报损记录
商品编号、入库日期、提货日期、数量、提货人编号、交货人编号、报损数量、报损人编号、报损日期
P1.2、P1.3、
S-3
商家退货
退货的明细
退货单编号、订货单编号、退货数量、退货人、接货人、退货原因、供应商编号
S-4
报损记录
库存商品报损明细
损坏商品编号、数量、型号、品牌、报损人编号
S-5
库存商品的需求信息
手机编号、手机型号、需求数量
S-6
顾客退货明细
退货单编号、退货日期、操作人员、订单编号、商品编号、客户编号、退货日期、退货原因
2.数据库结构设计
2.1概念结构设计
在需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。
它是整个数据库设计的关键。
在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。
2.1.1分E-R图建立
分E-R图就是全局概念模式下的底层概念模式向E-R图的转化。
先从用户全局需求出发,逐曾细化得到底层需求,把每个底层需求转换为一个概念模式,再逐层合成概念模式得到全局概念模式。
每个底层概念模式都要转化为分E-R图。
设计分E-R图的思想是,以中层数据流为切入点,利用抽象机制对需求分析阶段收集到的数据进行分类、聚集、概括,形成实体、实体的属性、标识实体的码、确定实体之间的联系类型(1:
1,1:
n,m:
n),再逐一设计分E-R图。
为手机销售系统所创建的实体及其属性图和三个分E-R图如下图2-1至图2-4所示:
图2-1销售分E-R图
图2-2进货分E-R图
图2-3储存分E-R图
2.1.2全局/整体E-R图
由分E-R图到全局E-R图的过程就是视图集成的过程,一般来说有两种方式:
(1)多个分E-R图一次集成,难度较大;
(2)逐步集成,用累加的方式一次集成两个分E-R图,可以降低复杂度。
无论采用哪种方式,每次集成局部E-R图时都需要分两步走:
(1)合并;
(2)修改和重构。
在合并分E-R图时,主要是为消除各分E-R图之间的冲突,包括属性冲突、命名冲突、结构冲突。
在消除属性冲突时,需要调整属性域和属性的取值单位;
消除命名冲突,主要是为预防同名异义或异名同义的情况;
结构冲突包括的比较多,每种都有自己的解决方法,主要有:
(1)同一对象在不同应用中具有不同的抽象,解决时通常是把属性变换为实体或把实体转换为属性,使同一对象具有相同的抽象;
(2)同一实体在不同分E-R图中所包含的属性个数和属性排列次序不完全相同,可以通过取该实体属性为各分E-R图中属性的并集,再适当调整属性的次序;
(3)实体间的联系在不同的分E-R图中为不同的类型,可以根据应用的语义对实体联系的类型进行综合或调整。
修改或重构主要是为消除不必要的冗余。
消除冗余主要采用分析方法,即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余;
此外也可以用规范化理论来消除冗余。
当然,并非所有的冗余数据与冗余联系都必须加以消除,有时为了提高效率,也会不得不以冗余信息作为代价,这个需要根据用户的整体需求来确定。
在合并和修改或重构之后,手机销售系统的全局E-R图如图2-2所示:
全局E-R图:
图2-4总E-R图
2.2逻辑结构设计
逻辑设计就是把概念设计阶段的基本E-R图转换为所用DBMS产品支持的数据模型。
物流管理系统所采用的DBMS是Oracle10.0g。
根据Oracle10.0g的特点,将概念设计所得到的E-R图转换为关系数据模型。
实现逻辑设计的任务和方法:
(1)将E-R模型转换为关系模型,明确关系模式的属性和码;
(2)利用规范化理论对现有数据模型进行优化;
(3)完成数据库模式定义,包括各模式的逻辑结构定义、关系的完整性和安全性等内容;
(4)完成用户子模式的设计。
2.2.1建立关系模式
将E-R模型转换为关系模型实际上就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。
转换一般遵循以下原则:
一个实体型转换为一个关系模式。
实体的属性就是关系的属性,实体的码就是关系的码。
实体间的联系的转化情况:
一个1:
1联系可以转换为一个独立的关系,也可以与任意一段对应的关系模式合并;
n联系可以转化为一个独立的关系模式,也可以与n端的关系模式合并;
一个m:
n的联系必须转化为一个关系模式。
由于供应商和发货单以及顾客和顾客订单之间的关系都是1:
n联系,所以可以直接将供应商的码合并到发货单中,将顾客的码合并到顾客订单中。
而虽然仓库和手机的存储关系也是1:
n联系,但是为表达清晰,故虽然存在部分数据冗余,但也可将存储关系也转化为一个关系模式。
供应商、手机、顾客、仓库、报损、职员关系,这些都需要转换为关系模式。
转换结果:
供应商(供应商编号,供应商名称,供应商地址,供应商电话)
手机(手机编号,手机名称,售价,进价)
供应(供应商编号,手机编号,供应日期,供应量,进价)
顾客(顾客编号,顾客姓名,用户电话,用户地址)
顾客订货(顾客编号,手机编号,订货日期)
顾客退货(顾客编号,手机编号,退货日期,退货数量)
员工发货(顾客编号,手机编号,发货日期,发货数量)
仓库(仓库编号,仓库名称,最大存储量)
存储(仓库编号,手机编号,存储量,入库日期,出库日期)
库存检查(仓库编号,手机编号,数量,折扣)
报损(手机编号,仓库编号,报损量,报损日期)
员工(员工编号,员工姓名,联系方式)
员工订购(员工编号,手机编号,供应商编号,订购数量,订购日期)
员工退货(员工编号,手机编号,供应商编号,退货数量,退货日期);
员工销售(员工编号,手机编号,销售数量,销售日期)
2.2.2关系模式规范化处理
供应商关系中,供应商为主码,每一个主码唯一标识一个供应商,唯一确定供应商名称,地址,电话。
不存在部分函数依赖,和传递函数依赖。
满足3NF。
手机(手机编号,手机名称,售价,折扣)
手机关系中,手机型号为主码,每个主码唯一标识一种手机,唯一确定一种手机的名称,进价,售价。
供应关系中,供应商编号和手机型号为主码,每个主码唯一确定一个供应日期,供应量,进价。
顾客(顾客编号,顾客姓名,顾客电话,顾客地址)
顾客关系中,顾客编号为主码,每一个主码唯一确定一个顾客的姓名,电话,顾客地址,不存在部分函数依赖,和传递函数依赖。
顾客订货(顾客编号,手机编号,订购日期)
顾客订货关系中,顾客编号,手机编号为码,唯一确定一个顾客订货关系。
顾客退货关系中,顾客编号、手机编号为码,唯一确定一个顾客退货关系,不存在部分函数依赖,和传递函数依赖。
员工发货关系中,顾客编号、手机编号为主码,唯一确定一个员工发货关系。
仓库关系中,仓库关系为主码,唯一确定仓库的名称和最大存储量。
存储(仓库编号,手机编号,库存量,入库日期)
存储关系中,仓库编号、手机编号为主码,唯一确定一个存储关系。
库存检查关系中,仓库编号、手机编号为主码,唯一确定一个库存检查关系。
报损关系中,手机编号、仓库编号为主码,唯一