数据库设计报告.docx
- 文档编号:8648154
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:64
- 大小:720.16KB
数据库设计报告.docx
《数据库设计报告.docx》由会员分享,可在线阅读,更多相关《数据库设计报告.docx(64页珍藏版)》请在冰豆网上搜索。
数据库设计报告
信息工程学院
《数据库课程设计》论文
题目:
超市管理系统数据库设计
学号:
专业班级:
姓名:
指导老师:
完成日期:
摘要
随着超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。
超市时时刻刻都需要对商品各种信息进行统计分析。
而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。
超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块:
系统权限的设定、原始数据录入、数据的汇总及查询等。
从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。
本次实习的题目是超市进销存管理系统,主要的目的是在超市进销存模块的基础上对超市的经营,管理进行研究和探讨。
根据系统所需功能,决定以windowsXP为开发平台,采用选择功能强大的MicrosoftSQLServer为开发工具,利用软件工程思想和方法,开发该系统的所需要的功能。
本系统由商品信息管理模块,员工信息管理模块,供应商信息管理模块等的组成,对超市中的各种信息进行分类管理,统筹规划。
功能较为全面。
关键字:
超市,进销存管理,数据库,MicrosoftSQLServer
超市管理系统数据库设计
引言
目前,无论是超市还是公司企业对于货物都实行了信息化管理,以提高管理水平和工作效率,同时也可以最大限度地减少手工操作带来的错误。
于是,进销存管理信息系统便应运而生。
在工厂中,产品的进销存涉及产品原料的采购,库存,投入生产,报损,甚至有时涉及到销售,同时,对于产品也有相应的生产,库存,销售,和报损等环节。
在其他非生产性单位,如超市,商店等,则主要涉及到进货,库存,销售和报损4个方面。
超市进销存管理的对象是很多的,广而言之,它可以包括:
商业,企业超市的商品,图书馆超市的图书,博物馆超市的展品等等。
在这里本文仅涉及工业企业的产品超市。
超市进销存管理系统按分类,分级的模式对仓库进行全面的管理和监控,缩短了超市信息流转时间,使企业的物资管理层次分明,井然有序,为采购,销售提供依据;智能化的预警功能可自动提示存货的短缺,超储等异常状况;系统还可进行材料超市ABC分类汇总,减少资金积压。
完善的超市管理功能,可对企业的存货进行全面的控制和管理,降低超市成本,增强企业的市场竞争力。
1需求分析
1.1任务
1.1.1处理对象
涉及哪些方面的数据,数据之间的关系(计算格式转换等);
商品:
商品编号,商品类型,商品名称,商品单价,生产日期,保质期,商品重量,商品规格
供应商:
供应商号,名称,地址,供应商电话,帐号
仓库:
库存号,现有库存,最高库存,最低库存
职工:
职工号,职工姓名,性别,生日,职称,进厂日期,备注信息
会员:
会员号,姓名,性别,生日,积分信息
1.1.2处理功能要求
该系统由商品信息管理模块,员工信息管理模块,供应商信息管理模块,仓库信息管理模块等可以完成商品的进销存和查询,更改等的基本操作。
并根据客户的要求完善系统的功能需求。
系统功能有:
(1)进货业务
进货管理是企业生产经营活动中及其重要的一环,它关系到产品质量能否得到保证,生产是否能够顺利进行,采购成本能否得到有效控制等问题。
企业现代管理理念中对企业的进货管理提出新的要求;企业进货时对供货商的选择更见慎重,双方不再是讨价还价的买卖关系,而是一种相互依存的合作伙伴关系,并且还需要认识到企业产品质量要从采购抓起,这就关系到供方的供货、服务质量。
下面是进货业务程序的主要内容:
供货商的情况调查:
在实施采购之前,超市首先就要对市场上各大商品供货商进行详细的调查,了解公司的具体情况,评定企业的信誉级别和公司的市场口碑,做到准确无误,采购顺利。
采购计划的编制:
超市根据自身的资金条件和销售状况,综合分析市场规律,拟定采购计划表。
实施进货计划:
根据供货商档案及评审结果,选定供货商;生成订货单给选定的供货商;双方就价格、数量、质量等方面洽谈磋商,直至签订合同;跟踪合同执行,安排供货进度和货物运输,做好验收入库工作。
(2)库存业务:
库存管理是指在上产经营中为销售和耗用而存储的各种资产。
企业存货不当都会增加不必要的费用:
存货过多将导致物资的积压、存储费用增加、流动资金周转不利,并且过量的库存会掩盖管理不善的问题。
存货不足则影响企业的正常销售活动。
库存管理的目标是需求最佳存货数量,使库存的成本总额最小化。
其主要业务如下:
产品入库、出库、盘库等日常处理。
科学合理地确定某库存物资的库存控制参数。
如:
最佳订货批量、最大库存量、最佳缺货量、最佳订购周期等,进行严格的库存控制工作。
汇总统计各类库存数据,反应和监督储备资金占用及采购资金使用情况。
(3)销售业务
销售对一个企业的生存和发展是至关重要的,它不再是传统意义上的“卖东西”,它对外关系到企业产品、服务和企业形象等多方面因素,对内涉及到销售、库存、财务等信息。
此外信息化的高速发展为企业的销售工作提出了新的挑战,封闭意味着落后,超市要抓住时机,引入现代化的销售管理模式,实施企业的信息化、智能化销售管理,才能使超市在激烈的市场竞争中立于不败之地。
1.1.3安全性和完整性要求
(1)各个实体的编号不能重复。
(2)每个订单都要求有订单号,这样不会导致同一个人顾客购买同一个东西插入不到销售表中,或者向同一个供应商采购同一个商品插入不到采购商品表中。
(3)销售单CS的属性顾客编号Cno不能设置为外码,如果说Cno来自于会员表C中的Cno,那么导致普通顾客无法购买。
(4)要求采购信息、采购退货信息,以及销售信息和顾客退货信息改变时,库存信息也作相应的改变。
即,采购信息增加时,库存信息也要相应的增加。
有采购退货时,库存信息做相应的减少。
销售除商品时,库存信息要做相应的减少。
顾客退货是,库存信息增加。
当有损坏商品时,即报损详单增加商品信息时,库存信息相应的减少。
1.2结果
1.2.1顶层数据流程图
图表1顶层流程图
1.2.2第一层流程图
图表2第一层数据流程图
1.2.3第二层流程图
图表3采购流程图
图表4销售流程图
图表5报损流程图
1.2.4数据字典
数据字典的意义:
数据流程图表达了数据和处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
数据字典在数据库设计中占有很重要的地位。
数据字典通常包括数据项,数据结构,数据流,数据存储和处理过程五个部分。
其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流,数据存储的逻辑内容
制作数据字典,详见附录一。
2概念结构设计
2.1具体任务
(1)选择中层数据流为切入点,通常选择实际系统中的子系统;
(2)设计分E-R图,即各子模块的E-R图;
(3)生成初步E-R图,通过合并方法,做到各子系统实体,属性,联系统一;
(4)生成全局E-R图,通过消除冲突等方面。
2.2阶段结果
2.2.1各个实体的E-R图
图表6各个实体的E-R图
2.2.2分E-R图
图表7销售,退货E-R图
图表8采购,退货E-R图
图表11存储E-R图
2.2.3全局E-R图
图表12全局E-R图
3逻辑结构设计
3.1任务
3.3.1将E-R模型转换为关系模型
E—R图转换为关系模型实际上就是要将实体性,实体的属性和实体性之间的联系转换为关系模式,这种转换一般遵循如下规则:
一个实体型转换为一个关系模式。
实体的属性就是关系的属性,实体的码就是关系的码。
对于实体型常见的联系则有以下不同的情况:
(1)一个1:
1的联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。
如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
(2)一个1:
n联系可以转换为一个独立的关系模式看,也可以与n端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码味n端实体的码。
(3)一个m:
n联系转换为一个关系模式。
与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系吗的一部分。
根据以上规则将本系统的E—R图转换为关系模式(关系的码用下划线标出)
超市管理系统数据库,包括T,S,E,W,C,TS,PO,PB,CS,CB,SW,D共12个关系模式:
商品信息表:
T(Tno,Ttype,Tname,TPprice,TSprice,TproDateTkeepDate,Tweight,Tunit);
供应商信息表S(Sno,Saddress,Saddress,Sphone,Scount);
职工信息表:
E(Eno,Ename,Ephone,Esalary);
仓库信息表:
W(Wno,WHsave,WDsave,Wmananger);
顾客信息表:
C(Cno,Cname,Cgender,Cbirth,Ccredit);
商品与供应商之间的供应信息表:
ST(Tno,Sno,QTY);
采购信息表:
PO(POno,Tno,Sno,POnum,POtime,Eno);
注:
此处的采购信息表仅为采购数量,并为减去采购退货部分
采购退货信息表:
PB(PBno,Tno,PBnum,PBtime,PBreason);
销售信息表:
CS(CSno,Cno,Tno,Eno,CStime,CSnum);
注:
此处的销售信息表并为减去顾客退货部分
顾客退货表:
CB(CBno,Tno,Cno,CBtime,CBnum,CBreason);
库存信息表:
TW(Tno,WnoWsave);
报损信息表:
D(Dno,Tno,Wno,Dnum,Dreason);
3.2结果
3.2.1将ER图转化为关系模式汇总
表1-3(超市管理系统系统)关系模式汇总
编号
关系名称
模式说明
T-1
T(详见附录2-1)
(详见附录2-1)
T-2
S(详见附录2-2)
(详见附录2-2)
T-3
E(详见附录2-3)
(详见附录2-3)
T-4
W(详见附录2-4)
(详见附录2-4)
T-5
C(详见附录2-5)
(详见附录2-5)
T-6
ST(详见附录2-6)
(详见附录2-6)
T-7
PO(详见附录2-7)
(详见附录2-7)
T-8
PB(详见附录2-8)
(详见附录2-8)
T-9
CS(详见附录2-9)
(详见附录2-9)
T-10
CB(详见附录2-10)
(详见附录2-10)
T-11
TW(详见附录2-11)
(详见附录2-11)
T-12
D(详见附录2-12)
(详见附录2-12)
3.2.2外模式汇总
表1-4(超市管理系统系统)关系外模式汇总
序号
视图名称
作用
备注
1
enter-W
入库单,采购数量减去采购退货数量。
记录入库商品数
Enter_W(Tno,,POnum(指减去退货数量后的采购记录))
2
Enter_detail
入库详单,入库单enter_W与商品信息T的自然连接。
记录入库商品详细信息
Enter_detail(Tno,POnum,Tname,TPprice
TSprice,TkeepDate,Tunit)
3
P_back
采购退货详单,来自采购退货PB与商品信息T的自然连接
P_back(Tno,PBnum,Tname,TPprice,
TkeepDate,Tunit,PBreason)
4
Sale
销售记录表,来自销售数量和顾客退货数量。
记录销售出的商品数量
Sale(Tno,CSnum(减去顾客退货后的商品数))
5
Sale_detail
销售商品详单,销售记录表sale和商品信息T的自然连接
Sale_detail(Tno,CSnum,Tname,TSprice,
TkeepDate,Tunit)
6
CB-detail
顾客退货表,来自顾客退货CB与商品信息T自然连接.记录退货详细信息。
CB_detail(Tno,CBnum,Tname,TSprice
TkeepDate,Tunit,CBreason)
7
W-save
库存记录表,来自现有库存TW与商品信息T的自然连接。
记录详细库存记录。
W_save(Wno,Tno,Tname,Wsave,TPprice,
TSprice,TkeeepDate,Tunit)
8
D-detail
报损详单,来自报损单D与商品信息T的自然连接,方便管理者查询报损商品报损信息,进而计算此超市亏损数。
D_detail(Wno,Tno,Tname,Dnum,TPprice,
TSprice,TkeeepDate,Tunit,Dreason)
9
T_detail
商品详细信息,可供顾客查询
T_detail(Tno,Tname,Ttype,TSprice,
tproDate,TkeepDate,Sname,Saddress,Sphone)
10
T_sale
商品的销售情况,销售量和销售利润
T_sale(Tno,total_num,profit)
3.2.3系统功能模块图
图表9超市管理系统功能
4物理结构设计
本次设计数据库中数据的存取方式,存放位置等按照Oracle10g的默认设置,如需要建立索引,请说明理由和采用的索引方式。
如果索引较多,可以表格形式展示。
5数据库实施
5.1任务
(1)建立数据库,数据表,视图,索引等存储过程等DDL定义,并完成完整性,安全性等要求定义;可用DDL语言或SQL脚本任意一种形式表现。
具体的语句见附录3。
(2)数据入库。
(每个基本表数据不少于20条记录)
(3)完成简单的处理过程,系统主要功能(查询,更新,简单统计等),应建立相应的存储过程,对有参考完整性要求的数据更新。
5.2结果
5.2.1存储过程汇总
表5-1存储过程汇总
编号
存储过程名称
定义
作用
P-1
No_sales
详见附录3-3
输入商品号,查询该商品的销售情况
P-2
No_save
输入商品号,查询该商品的库存量
p-3
Name_detail
输入商品名,查询商品的详细信息,供应商、关于地址等
p-4
Delete_E
输入职工号查询职工号,删除相应的记录
p-5
Delete_C
输入顾客号,删除顾客信息
p-6
T_destory
输入商品号,查看该商品的损坏情况
P7
Select_credit
输入顾客号,查询该顾客的积分
P8
Select_sale
输入商品号,查询某商品在某一段时间的销售情况
5.2.2触发器汇总
表5-2触发器汇总
编号
触发器名称
定义
作用
T-1
T1
详见附录3-4
当销售出商品时,就修改库存商品信息
T-2
T2
当销售出商品时,对顾客号进行查询,如果是会员则对会员的积分进行修改,普通顾客则不予以处理
t-3
T3
当采购进货物时(向PO增加一条记录),修改库存信息(TW增加一条信息)
t-4
T4
当采购退货时(向PB增加一条记录),修改库存信息(TW减少一条信息)
t-5
T5
顾客退货(CB增加一条记录),修改库存记录(库存信息增加)
t-6
T6
当报损信息D增加信息时,对库存记录作更改
5.2.3实习总结:
1)数据库设计是一个反反复复修改的过程,在这个过程中不仅巩固以前所学习的知识,而且磨练了我的耐心,可谓是一个可谓是才智于身心共同成长的过程。
2)通过本次实习,我对oracle有了初步的了解,学习了Pl/SQL的编程,包括建表、建视图、建触发器、建存储过程,以及学习了oracle数据的导入导出。
通过与T/SQL语言对比,发现PL/SQL建表和建视图的过程基本一样,PL/SQl建存储过程不如T/SQL那么方便,但PL/SQL建触发器的过程及其简单。
3)在本次实习中,发现自己对Excel、Word、PowerPoint的操作还不是很熟练,即使经常使用。
如Excel中生成随机数和随机日期、Word中如何从指定的页开始插入页码、生成目录、如何制作出很精美的PPT,对microsoft软件的学习必须的加强。
4)之前学习数据库时,只是做一些很简单的操作,学习了一些理论的数据库知识,根本就不知道如何使用,通过这次实习对数据库的功能有了更深的了解,认识到数据库的伟大之处。
5)学习过程中必须注重理论与实际的联系,比如在实际超市购买中普通顾客没有编号,只有会员有,但在数据库设计中顾客是一个实体,必须可区分,这就要求必须每个顾客必须有一个顾客号,会员属于顾客,若是会员则属性姓名、生日、积分不为空。
对于普通顾客给随机分配一个数即可。
又如在数据库实施过程中,发现对销售单CS的属性设置存在问题,将Cno设置为外码,也就是说Cno只能来自于会员表C中的Cno,那么导致普通顾客无法购买。
解决方法为:
取消对CS表中Cno的外码设置,普通顾客的顾客号在会员以外随机赋值。
还有在销售表中我设置的主属性为商品号和顾客号,这样就导致同一个人无法再次购买同一个商品,这是不合理的,解决方法为给每一个销售记录都赋一个销售单号,这样就可以将每一条销售记录唯一的区分开。
6调试与测试
执行数据操纵语句对相应的功能进行验证和测试。
(查询,插入,修改和删除)
测试结果见附录4和5。
附录1数据字典说明
附录1.1数据项说明
表1-1(超市管理系统)数据项说明(汇总统计)
数据向编号
数据项名
数据项含义
类型
长度
取值范围
DI-1
Tno
商品号
varchar
10
DI-2
Ttype
商品类型
Varchar
DI-3
Tname
商品名称
varchar
20
DI-4
TPprice
商品进价
Float
DI-5
TSprice
商品售价
Float
DI-6
TproDate
生产日期
Date
DI-7
TkeepDate
保质期
Varchar(10)
DI-9
Tunit
商品单位
Varchar
10
DI-10
Sno
供应商号
Varchar
10
DI-11
Sname
供应商名称
Varchar
20
DI-12
Saddress
供应商地址
Varchar
30
DI-13
Sphone
供应商电话
Varchar
15
DI-14
QTY
供应数量
int
DI-15
Scount
帐号
Varchar
30
DI-16
Eno
职工号
Varchar
20
DI-17
Ename
职工姓名
Varchar
20
DI-18
Ephone
职工联系电话
Varchar
20
DI-19
Ejob
职称
Varchar
30
DI-20
Esalary
薪水
Float
DI-21
Wno
仓库号
Vatchar
10
DI-22
Wsave
现有库存
Int
DI-23
WHsave
最高库存
Int
DI-24
WDsave
最低库存
Int
DI-25
Wmanager
仓库管理者
Varchar
20
DI-26
Cno
会员号
Varchar
10
DI-27
Cname
会员姓名
Varchar
20
DI-28
Cgender
会员性别
Varchar
10
DI-29
Cbirth
会员生日
Varchar
20
DI-30
Ccredit
积分
Int
DI-31
PBreason
采购退货原因
Varchar
100
DI-32
CBreason
顾客退货原因
Varchar
100
DI-33
POno
采购订货单号
Varchar
30
DI-34
POtime
采购时间
Date
DI-35
POnum
采购数量
Int
DI-36
PIno
发货单号
Varchar
30
DI-37
PItime
发货时间
Date
DI-38
PInum
发货数量
Int
DI-39
PBno
采购退单号
Varchar
30
DI-40
PBtime
采购退货时间
Date
DI-41
PBnum
采购退货数量
Int
DI-42
COno
顾客订货单
Varchar
30
DI-43
COtime
顾客订货时间
Date
DI-44
COnum
顾客订货数量
Int
DI-45
CSno
销售单号
Varchar
30
DI-46
CStime
销售时间
Date
DI-47
CSnum
销售数量
Int
DI-48
CBno
顾客退单号
Varchar
30
DI-49
CBtime
顾客退货时间
Date
DI-50
CBnum
顾客退货数量
Int
DI-51
Dnum
报损数量
Int
DI-52
Dreason
报损原因
varchar
100
DI-53
Dno
报损单号
Varchar(10)
附录1.2数据结构
表1-2(超市管理系统)(汇总统计)
数据结构编号
数据结构名
数据结构含义
组成
DS-1
T
商品信息
Tno,Ttype,Tname,TPprice,YSPrice,TproDateTkeepDate,Tweight,Tunit
DS-2
S
供应商信息
Sno,Sname,Saddress,Sphone,Scount,
DS-3
W
仓库信息
Wno,Wsave,WHsave,WDsave,Wmananger
DS-4
C
会员信息
Cno,Cname,Cgender,Cbirth,Ccredit
DS-5
PO
采购订货单
POno,POtime,POnum,Eno,Tno
DS-6
PI
发货单
PIno,PItime,PInum,Tno,Sno
DS-7
PB
采购退货单
PBno,PBnum,PBtime,PBreason,Tno,Eno
DS-8
CO
顾客订单
COno,COtime,COnum,Tno,Cno
DS-9
CS
销售单
CSno,CStime,CSnum,,Tno,Cno,Eno
DS-10
CB
顾客退单
CBno,CBtime,CBnum,Tno,Cno
DS-11
D
报损信息
Dno,Dnum,D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计 报告