仓库管理系统数据库设计课程设计Word文档格式.docx
- 文档编号:5247018
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:138
- 大小:1.89MB
仓库管理系统数据库设计课程设计Word文档格式.docx
《仓库管理系统数据库设计课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《仓库管理系统数据库设计课程设计Word文档格式.docx(138页珍藏版)》请在冰点文库上搜索。
2)用户对系统的要求
通过需求分析,对商品库存进行有效的管理,使之形成完善的应用系统。
数据库设计中要合理设置商品信息和库存信息等,用来实现商品信息的新增,修改、删除等功能,使得商家有较详细的数据统计与分析。
基本功能:
(1)登录认证
作为一个企业实际应用项目,登录认证是必不可少的。
本项目的用户登录管理比较简单,分为管理员和客户登录,管理员和客户有不同的权限。
(2)统计报表
统计报表模块包括客户统计、供货商统计、货物统计、仓库统计。
各个统计都可以按照各个关键字进行统计查询。
(3)入库管理
入库管理主要是管理员对仓库进行进货入库的操作,管理人员通过改功能模块把每天的入库商品明细输入数据库并对商品信息进行修改和删除。
该模块支持按货物编号和货物名称、所有货物等关键字查询货物编号、仓库编号、货物名称、类型名称、货物存储量。
(4)出库管理
出库管理模块与入货管理模块相似,主要是对货物出库信息进行管理。
管理员员通过该功能模块对出库商品进行出库操作。
(5)库存管理
库存管理模块主要是对已库存的商品进行操作,包括对商品的仓库信息进行修改。
另外,可以按货物编号和货物名称、所有货物对所有货物进行盘点。
1.数据流图
2.数据项
1.客户数据字典
属性名
存储代码
类型
长度
备注
编号
Cno
char
5
客户编号
姓名
Cname
20
客户姓名
地址
Caddr
40
客户地址
电话
Ctel
11
客户电话
密码
Cpw
10
客户密码
2.货物数据字典
货物编号
Gno
货物名称
Gname
仓库编号
Tno
3.管理员数据字典
M01
管理员编号
Mname
管理员姓名
PW
管理员密码
4.供应商数据字典
Pno
供应商编号
Pname
供应商姓名
Paddr
供应商地址
货物
Pgoods
6
供商供应货物
Ptel
供应商电话
5.仓库存储数据字典
Gno
Sno
类型名称
Tname
货物存储量
Gnum
int
4
仓库货物存储量
6.货物入库数据字典
货物类型
real
入库总量
Innum
货物入库总量
收购单价
Inprice
货物收购单价
入库时间
Indata
货物入库时间
7.货物出库数据字典
出库编号
货物出库编号
出库总量
Outnum
货物仓库总量
售出单价
Outprice
货物出库单价
出库时间
Outdata
货物出库时间
8.仓库数据字典
仓库名称
Sname
仓库地址
Saddr
仓库容量
Ssize
9.货物类型数据字典
类型编号
类型描述
Tdescription
50
3.数据结构
数据结构名
组成
管理员
管理员编号,管理员姓名,密码
客户
客户编号,客户名称,地址,联系电话,密码
供应商
供应商编号,供应商名称,供应商地址,货物,联系方式
货物
物品编号,物品编号,类型编号
仓库
仓库编号,仓库名称,仓库地址,仓库面积
类型编号,类型名称,类型描述
入库
货物编号,供应商编,货物名称,货物类型,入库总量,收购单价,仓库编号,入库时间
出库
货物编号,客户编号,货物名称,货物类型,出库总量,售出单价,仓库编号,出库时间
库存
货物编号,仓库编号,货物名称,货物类型,货物总量
4.数据流
数据流名
数据流来源
数据流去向
注册管理员信息
管理员信息表
管理员注册信息
注册客户信息
客户
客户信息表
客户注册信息
注册供应商信息
供应商
供应商信息表
供应商注册信息
查询客户信息
查询供应商信息
注销客户信息
客户注销信息
注销供应商信息
供应商注销信息
修改客户信息
客户修改信息
修改供应商信息
供应商修改信息
查询货物信息
货物信息表
货物查询信息
货物入库信息
货物出库信息
扩建仓库信息
仓库信息表
仓库扩建信息
修改货物信息
货物修改信息
5.数据存储
数据存储名
输入的数据流
输出的数据流
库存信息表
入库信息
出库信息
入库信息表
仓库删除信息
6.处理过程
处理过程名
输入数据流
输出数据流
注册客户
注册供应商
货物查询
货物信息
货物入库
货物出库
仓库扩建
仓库信息
货物修改
三、系统设计
1、概念结构设计
1)总E-R图
2)货物类型E-R图
3)库存实体E-R图
3)入库实体E-R图
4)出库实体E-R图
2、逻辑结构设计
客户(编号,姓名,联系方式,地址)
管理员(编号,姓名,联系方式,密码)
货物(货物编号,货物名称,仓库编号)
货物类型(类型编号,类型名称,类型描述)
供应商(编号,名称,地址,货物,电话)
仓库存储(货物编号,仓库编号,货物名称,类型名称,货物存储量)
货物入库(货物编号,供应商编号,货物名称,货物类型,仓库编号,入库总量,收购单价,入库时间)
货物出库(货物编号,客户编号,货物名称,货物类型,仓库编号,出库总量,售出单价,出库时间)
仓库(仓库编号,仓库名称,仓库地址,仓库容量)
3、系统功能模块图
4、其它设计图形工具
亿图专业流程图、网络图制作工具V1.6.2(试用版)
四、详细设计
数据库中的表、视图、存储过程如下图所示:
存储过程、视图、触发器主要sql语句:
----------------------------------------------
--创建存储过程
---客户登陆 存储过程
alterprocproc_Clogin
@cnoint,
@pwdvarchar(20),
@statusintoutput
as
select@status=count(*)fromcustomerwherecno=rtrim(ltrim(@cno))andcpw=rtrim(ltrim(@pwd))
if@status=1set@status=0------0登陆成功
else
begin
select@status=count(*)fromcustomerwherecno=rtrim(ltrim(@cno))
if@status=0set@status=1--------1账户不存在
elseset@status=2---------------2密码错误
end
--客户注册存储过程
createprocproc_Creg
@Cnamevarchar(20),
@Caddrvarchar(40),
@Ctelchar(11),
@pwdvarchar(10),
@Cnointoutput
insertintocustomervalues(@Cname,@Caddr,@Ctel,@pwd)
select@Cno=Max(Cno)fromcustomer
--添加客户存储过程
alterprocproc_AddCustm
@pwdvarchar(10)
insertintocustomer(cname,caddr,ctel,cpw)values(@Cname,@Caddr,@Ctel,@pwd)
--客户修改存储过程
createprocproc_Cupd
updatecustomer
setcname=@Cname,caddr=@Caddr,ctel=@Ctel,cpw=@pwd
wherecno=@cno
---管理登陆 存储过程
alterprocproc_Mlogin
@mnoint,
select@status=count(*)frommanagerwheremno=@mnoandmpw=rtrim(ltrim(@pwd))
select@status=count(*)frommanagerwheremno=@mno
if@status=0set@status=1--------1用户名不存在
--管理注册存储过程
createprocproc_Mreg
@Mnamevarchar(20),
@pwdvarchar(20),
@Mnointoutput
insertintomanagervalues(@Mname,@pwd)
select@Mno=Max(Mno)frommanager
--添加供应商存储过程
alterprocproc_AddProv
@Pnamevarchar(20),
@Paddrvarchar(40),
@Ptelchar(11),
@Pgoodschar(11)
insertintoprovidervalues(@Pname,@Paddr,@Pgoods,@Ptel)
--修改供应商存储过程
createprocproc_UpdProv
@pnoint,
@Ptelchar(11)
updateprovider
setpname=@pname,paddr=@paddr,ptel=@ptel
wherepno=@pno
--注销客户存储过程
createprocproc_Cdel
@Cnoint
deletefromcustomerwherecno=@cno
--注销供应商存储过程
createprocproc_Pdel
@Pnoint
deletefromproviderwherepno=@Pno
--注销管理员存储过程
createprocproc_Mdel
@Mnoint
deletefrommanagerwheremno=@mno
execproc_Mdel112
---调用存储过程
declare@aint
execproc_Mlogin100,'
110'
@aoutput
print@a
--货物入库存储过程
alterprocproc_goodsin
@gnamechar(10),
@Tnamechar(20),
@snoint,
@innumint,
@inpricemoney
insertintogoods_in(pno,gname,tname,sno,innum,inprice)
values(@pno,@gname,@tname,@sno,@innum,@inprice)
--货物出库存储过程
createprocproc_goodsout
@gnoint,
@outnumint,
@outpricemoney
insertintogoods_out(gno,cno,gname,tname,sno,outnum,outprice)
values(@gno,@cno,@gname,@tname,@sno,@outnum,@outprice)
-- 创建视图
--货物视图
alterviewview_goods
selecta.gno货物编号,a.gname货物名称,d.tname类型编号,isnull(sum(Innum)-sum(outnum),sum(Innum))数量
fromgooda,goods_inbleftouterjoingoods_outconb.gname=c.gname,typegoodd
wherea.gname=b.gnameandd.tno=a.tno
groupbya.gno,a.gname,d.tname
--客户视图
alterviewview_customer
selectcno客户编号,cname客户名称,caddr客户地址,ctel联系方式
fromcustomer
--仓库视图
alterviewview_storage
selecta.sno仓库编号,sname仓库名称,saddr仓库地址,ssize仓库容量,ssize-isnull(sum(b.innum),0)+isnull(sum(c.outnum),0)仓库余量
fromstoragealeftouterjoingoods_inbona.sno=b.snoleftouterjoingoods_outconb.sno=c.sno
groupbya.sno,sname,saddr,ssize
--供应商视图
alterviewview_provider
selectpno供应商编号,pname供应商名,paddr地址,pgoods供应货物,ptel联系方式
fromprovider
-- 创建触发器
--禁止删除初始化管理员
createtriggertrig_manager100
onmanager
fordelete
declare@cntint
select@cnt=count(mno)fromdeletedwheremno=100
if@cnt<
>
0
raiserror('
无法删除初始化管理员!
'
16,1)
rollbacktransaction
go
select*fromprovider
--进货时如果没有过这种货物或者货物类型,则新建
altertriggertrig_newgoodAndtype
ongoods_in
forinsert
declare@cnt1int,@gtypechar(20),@cntint,@gnamechar(20),@gtint
select@cnt1=count(*)frominsertedwheretnamein(selecttnamefromtypegood)
if@cnt1=0
select@gtype=tnamefrominserted
insertintotypegood(tname)values(@gtype)
select@cnt=count(*)frominsertedwheregnamein(selectgnamefromgood)
if@cnt=0
select@gname=gnamefrominserted
select@gt=tnofromtypegoodwheretname=(selecttnamefrominserted)
insertintogood(gname,tno)values(@gname,@gt)
--货物不能小于
createtriggertrig_gooderror
ongoods_out
declare@sumint,@gnamechar(20)
select@gname=gna
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 管理 系统 数据库 设计 课程设计