收藏 分销(赏)

企业仓库综合管理系统数据库设计.doc

上传人:a199****6536 文档编号:2720477 上传时间:2024-06-04 格式:DOC 页数:28 大小:595.54KB
下载 相关 举报
企业仓库综合管理系统数据库设计.doc_第1页
第1页 / 共28页
企业仓库综合管理系统数据库设计.doc_第2页
第2页 / 共28页
企业仓库综合管理系统数据库设计.doc_第3页
第3页 / 共28页
企业仓库综合管理系统数据库设计.doc_第4页
第4页 / 共28页
企业仓库综合管理系统数据库设计.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、山东建筑大学计算机科学和技术学院课程设计说明书题 目: 企业仓库管理系统设计-提货 管理及用户登录模块课 程: 数据库原理及应用课程设计院 (部): 计算机学院山东建筑大学计算机科学和技术学院课程设计任务书设计题目企业仓库管理系统设计-提货管理及用户登录模块已知技术参数和设计要求为了满足企业仓库管理业务需求,先需要开发企业仓库管理系统。该系统对货物进行入库和出库管理。该系统管理员为仓库管理员,同时她也是系统管理员。我实现功效模块:用户登录管理、提货管理。具体描述以下:(1)用户登录注册管理。 用户注册。用户注册时,输出用户号和密码,假如用户号不存在则注册成功,若用户号已存在则用户存在,不能注册

2、。 用户登录。用户登录时,输出用户号和密码,和数据库中用户表匹配数据,假如用户号和密码全部相同则登录成功,不然登录失败。(2)提货管理。 申请提货登记。包含:货物号,用户号,货物数量。审核提货单。首先依据数据库用户信息表审核提货单中用户是否存在,若用户存在,然后依据数据库仓库库存信息审核用户所需货物数量是否充足。货物出库登记:包含:货物号,用户号,货物数量,出库日期。设计内容和步骤1、 需求分析2、 数据库设计3、 用SQL语句、触发器和存放过程等实现功效4、 课程设计说明书设计工作计划和进度安排1、 设计工作6课时2、 实现4课时3、 课程设计说明书2课时设计考评要求1、 考勤20%2、 课

3、程设计说明书50%3、 答辩30%指导老师(签字): 教研室主任(签字):目录1. 系统概述42需求分析42.1、数据流图:52.2、数据字典72.2.1数据项72.2.2数据结构82.2.3数据流82.2.4数据存放92.2.5处理过程103. 数据库概念结构设计103.1、标识仓库管理系统中实体和属性103.2、确定实体间联络114. 数据库逻辑结构设计124.1、关系模型124.2、表和视图设计125. 数据库物理设计及实施155.1 创建数据库155.2 创建表156. 功效实现206.1 用户注册登录功效模块206.2 仓库提货功效模块227. 总结25参考文件261. 系统概述本作

4、品完成是企业仓库管理系统,前期关键是需求分析,包含数据和处理,并对相关企业仓库管理系统管理员需求进行了综合、归纳和抽象,形成了一个独立于DBMS概念模型,画出了ER图,然后本组在数据库中将概念模型转换成了数据模型,建了用户信息表Users,用到了仓库基础信息表Storage,仓库库存信息表Repertory,然后本小组分工实现了用户登录、采购管理、提货管理、入库管理、出库管理。 本人实现:(企业仓库管理系统设计提货管理及用户登录模块)1.未注册用户优异行注册,注册后登录,注册用户可直接登录系统。2.当用户提出提货请求时,产生一个提货单3.首先依据数据库用户信息表审核提货单中用户是否存在。4.若

5、用户存在,则审核货物,查看货物数量是否充足。5.审核成功后进行货物出库登记,登记内容有货物号、用户号、货物数量、日期。在OutS表中插入登记此条出库统计。2需求分析 现要开发企业仓库管理系统。经过可行性分析和初步需求调查,确定了系统功效边界,该系统应能完成下面功效:(1)用户注册,登录。(2)货物采购管理(3)仓库入库管理。(4)仓库提货管理。(5)仓库出库管理。2.1、数据流图:图2.1 企业仓库管理系统顶层数据流图图2.2 企业仓库管理系统0层数据流图图2.3 用户登录注册数据流图图2.4 仓库提货管理数据流图2.2、数据字典2.2.1数据项表2.1 数据项表数据项名称含义说明类型长度货物

6、号唯一标识一个货物字符型20货物名货物名称字符型20货物数量货物总数量整型货物价格货物价钱整型供给商号唯一标识一个供给商字符型20供给商名供给商名字字符型20用户号唯一标识一个用户字符型20用户密码用户密码字符型20仓库号唯一标识仓库信息字符型20仓库总容量仓库总容量信息整型仓库剩下容量仓库剩下容量整型出库编号用于统计货物出库字符型20出库日期用于统计货物何时出库字符型20管理员账号唯一标示管理员信息字符型20管理员密码管理员管理员密码字符型202.2.2数据结构 (1)名称:用户 含义说明:定义了一个用户相关信息 组成结构:用户号+用户密码(2)名称:货物 含义说明:定义了一个货物相关信息组

7、成结构:货物号+货物名+货物价格+货物型号+货物类别 (3)名称:仓库 含义说明:定义了一个仓库相关信息 组成结构:仓库号+仓库总容量+仓库剩下容量2.2.3数据流 (1)数据流名称:入库单 含义:用户入库时需要填写信息 起源:用户 去向:审核用户 数据流量:50份/天 组成:用户号+货物名+货物数量 (2)数据流名称:出库单 含义:用户出库时需要填写信息 起源:用户 去向:审核用户 数据流量:50份/天 组成:用户号+货物名+货物数量 (3)数据流名称:提货单 含义:用户提货时需要填写信息 起源:用户 去向:审核用户 数据流量:50份/天 组成:用户号+货物号+货物数量 (4)数据流名称:违

8、规单 含义:假如无法提出所需货物,会给出一个反馈 起源:系统管理员 去向:反馈给用户 数据流量:50份/天 组成:无法提货原因2.2.4数据存放(1)数据存放名称:管理员信息表含义说明:存放管理员注册信息组成结构:管理员账号+管理员密码说明:用来存放管理员信息,管理员账号号是管理员主属性(2)数据存放名称:用户信息表含义说明:存放用户注册信息组成结构:用户号+用户密码说明:用来存放用户信息,用户号是用户主属性(3)数据存放名称:货物信息表含义说明:存放货物注册信息组成结构:货物号+货物名+货物价格说明:货物号为其主属性,货物价格为目前该货物入库价格(4)数据存放名称:仓库信息表含义说明:存放仓

9、库相关信息组成结构:仓库号+仓库总容量+仓库剩下容量说明:仓库号为其主码,要求能依据审核仓库剩下容量查询货物存放是否。(5)数据存放名称:出库信息表含义说明:存放货物出库信息组成结构:出库编号+货物号+用户号+货物数量+货物价格+仓库号+出库日期说明:出库编号为其主码(6)数据存放名称:仓库库存信息表含义说明:用来存放目前仓库存放信息组成结构:仓库号+货物号+用户号+货物数量说明:仓库号,货物号,用户号是其主码,货物数量为目前仓库中该用户该货物数量。(7)数据存放名称:提货单信息表含义说明:存放用户提货时所需提货单组成结构:用户号+货物号+货物量说明:仓库号,货物号,用户号是其主码,货物数量为

10、目前仓库中该用户该货物数量。2.2.5处理过程处理过程名称输入输出加工逻辑货物入库入库单查对正确后入库信息表将货物根据入库单清点正确后,审核经过,不然不经过货物出货出货单查对正确后出库信息表将货物根据出库单清点正确后,审核经过,不然不经过订货单订货单查对正确后订货单根据用户订货情况进行查对发货单发货单查对正确后发货单根据用户订货情况进行查对然后发货3. 数据库概念结构设计3.1、标识仓库管理系统中实体和属性参考数据字典中对数据存放描述,可初步确定实体和属性为:管理员管理员账号,管理员密码货物货物号,货物名,货物价格,货物型号,货物类别用户用户号,用户密码 供给商供给商编号,供给商名仓库仓库号,

11、仓库总容量,仓库剩下容量入库信息入库编号,货物号,用户号,货物数量,仓库号,入库日期出库信息货物号,用户号,货物数量,出库日期仓库存信息仓库号,货物号,用户号,货物数量提货单信息货物号,用户号,货物数量其中有下划线属性为实体码。3.2、确定实体间联络图3.1 企业仓库管理系统总E-R图图3.2 仓库提货管理E-R图4. 数据库逻辑结构设计4.1、关系模型表4.1 关系模式表将在概念结构阶段得到基础E-R图转换成关系模型,以下表所表示:关系名属性及码其它约束条件货物货物号,货物名,货物价格货物号为主码货物名不许可为空用户用户号,用户密码用户号为主码用户密码不许可为空仓库仓库号,总容量,剩下容量仓

12、库号为主码总容量、剩下容量不许可为空入库信息入库编号,货物号,用户号,货物数量,仓库号,入库日期入库编号为主码货物号,用户号不许可为空出库信息货物号,用户号,货物数量,出库日期货物号,用户号为主码,而且为外码。货物号,用户号不许可为空仓库库存信息仓库号,货物号,用户号,货物数量量仓库号,货物号,用户号为主码,而且为外码。货物号,用户号不许可为空管理员信息管理员账号,管理员密码管理员账号为主码密码不许可为空4.2、表和视图设计表4.2 Users(用户表)字段名字段含义字段类型长度小数是否为空列级约束Uid用户号VARCHAR20NOT NULLPrimarykeyUpassword用户密码VA

13、RCHAR20NOT NULLNOT NULL函数依靠有:Uid Upassword能够看出非主属性Upassword完全函数依靠于Uid,而且此表绝不会存在传输函数依靠和部分函数依靠问题,所以Users属于3NF甚至于更高等级。表4.3 Goods(货物表)字段名字段含义字段类型长度小数是否为空列级约束Gid货物号VARCHAR20NOT NULLPrimarykeyGname货物名VARCHAR20NOT NULLNOT NULLGprice货物价格INTNOT NULLNOT NULLGmodel货物型号VARCHAR20NOT NULLNOT NULLGsort货物类别VARCHAR2

14、0NOT NULLNOT NULL函数依靠有:Gid Gname,Gid Gprice,Gid Gmodel,Gid Gsort能够看出非主属性Gname,Gprice,Gmodel,Gsort完全函数依靠于Gid,而且此表绝不会存在传输函数依靠和部分函数依靠问题,所以Users属于3NF甚至于更高等级。表4.4 Storage(仓库信息表)字段名字段含义字段类型长度小数是否为空列级约束Sid仓库号VARCHAR20NOT NULLPrimarykeySstocks仓库总容量INTNOT NULLNOT NULLSsstock剩下容量INTNOT NULLNOT NULL函数依靠有:Sid S

15、stocks ,Sid Ssstock能够看出非主属性Sstocks、Ssstock完全函数依靠于Sid,而且Storage表中没有传输函数依靠,即每一个非主属性既不部分依靠于码也不传输依靠于码,所以Storage属于3NF。表4.5 Lading(提货单信息表)字段名字段含义字段类型长度小数是否为空列级约束Uid用户号VARCHAR20NOT NULLForeign key references Users(Uid)Gid货物号VARCHAR20NOT NULLForeign key references Goods(Gid)Lnumber提货数量INTNULL函数依靠有:(Uid,Gid)

16、 Lnumber能够看出非主属性Lnumber完全函数依靠于(Uid,Gid),而且Lading表中没有传输函数依靠,即每一个非主属性既不部分依靠于码也不传输依靠于码,所以Lading属于3NF。表4.6 OutS(出库信息表)字段名字段含义字段类型长度小数是否为空列级约束Gid货物号VARCHAR20NOT NULLForeign key references Goods(Gid)Uid用户号VARCHAR20NOT NULLForeign key references Users(Uid)Gnumber货物数量INTNULLMODIFYDATE出货日期datatimeNULL表级约束Pri

17、marykey(Gid,Uid)函数依靠有:(Gid,Uid) Gnumber,MODIFYDATE非主属性Gnumber,MODIFYDATE完全函数依靠于(Gid,Uid),且不存在传输函数依靠,即属于3NF。表4.7 Repertory(仓库库存信息表)字段名字段含义字段类型长度小数是否为空列级约束Sid仓库号VARCHAR10NOT NULLForeign key references Storate(sid) Gid货物号VARCHAR20NOT NULLForeign key references Cargo(gid)Gnumber货物数量INTNULL表级约束Primarykey

18、(Sid,Gid)函数依靠有:(Sid,Gid)Gnumber能够看出非主属性Gnumber对(Sid,Gid)是完全函数依靠,而且不存在传输依靠,即每一个非主属性既不部分依靠于码也不传输依靠于码,所以Repertory属于3NF。5. 数据库物理设计及实施5.1 创建数据库create database 企业仓库系统;5.2 创建表创建Users表:create table Users(Uid varchar(20) not null primary key,Upassword varchar(20) not null);创建Goods表:create table Goods(Gid var

19、char(20) not null primary key,Gname varchar(20)not null,Gprice int not null,Gmodel varchar(20)not null,Gsort varchar(20)not null);创建Storage表:create table Storage(Sid varchar(20) not null primary key, Sstocks int not null, Ssstock int not null);创建Lading表:create table Lading(Lid varchar(20) primary ke

20、y,Uid varchar(20),Gid varchar(20),Lnumber int);创建Reterpory表:create table Reterpory(Sid varchar(20) not null,Gid varchar(20) not null,Gnumber int not null,primary key(Sid,Gid),foreign key(Sid) references Storage(Sid),foreign key(Gid) references Goods(Gid),);创建OutS表:create table OutS(Gid varchar(20),U

21、id varchar(20),Gnumber int,MODIFYDATE datetime,foreign key(Gid)references goods(Gid),foreign key(Uid)references users(Uid);向Users表中插入数据:insert into Users(Uid,Upassword)values(U1,aaa);insert into Users(Uid,Upassword)values(U2,bbb);insert into Users(Uid,Upassword)values(U3,ccc);insert into Users(Uid,U

22、password)values(U4,ddd);insert into Users(Uid,Upassword)values(U5,eee);insert into Users(Uid,Upassword)values(U6,fff);insert into Users(Uid,Upassword)values(U7,ggg);insert into Users(Uid,Upassword)values(U8,hhh);insert into Users(Uid,Upassword)values(U9,jjj);insert into Users(Uid,Upassword)values(U1

23、0,kkk);select* from Users;向Goods表中插入数据:insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G1,a,20,A,一级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G2,b,10,B,二级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G3,c,50,C,一级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) va

24、lues(G4,d,70,D,三级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G5,e,20,E,二级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G6,f,100,F,一级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G7,g,140,G,三级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G8,h,60,H,一级)

25、;insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G9,i,80,I,二级);insert into Goods(Gid,Gname,Gprice,Gmodel,Gsort) values(G10,j,90,J,一级);select* from Goods;向Reterpory表中插入数据:insert into Reterpory values(S1,G1,600);insert into Reterpory values(S2,G2,800);insert into Reterpory values(S3,G3,1000);i

26、nsert into Reterpory values(S4,G4,900);insert into Reterpory values(S5,G6,800);insert into Reterpory values(S6,G7,700);insert into Reterpory values(S7,G8,600);insert into Reterpory values(S8,G5,950);insert into Reterpory values(S9,G10,500);insert into Reterpory values(S10,G9,1100);select* from Reter

27、pory;6. 功效实现6.1 用户注册登录功效模块1.用户注册时,输出用户号和密码,假如用户号不存在则注册成功,若用户号已存在则用户存在,不能注册。-用户注册存放过程create procedure insertUsers(uid varchar(20),upassword varchar(20),returnname varchar(20) output)asif exists(select Uid from Users where Uid=uid)beginset returnname=用户存在endelsebegininsert into Users values(uid,upassw

28、ord)set returnname=注册成功endgo2.用户登录时,输出用户号和密码,和数据库中用户表匹配数据,假如用户号和密码全部相同则登录成功,不然登录失败。-用户登录存放过程create procedure loginUsers(uid varchar(20),upassword varchar(20),returnname varchar(20) output)as if exists(select Uid,Upassword -判定登录信息是否正确 from Users where Uid=uid and Upassword=upassword)begin set returnn

29、ame=登陆成功endelsebeginset returnname=登录失败endgo6.2 仓库提货功效模块1. 当用户提出提货请求时,产生一个提货单。(利用insert语句将提货单信息插入到提货信息表Lading)insert into Lading values(L1,U1,G1,500);insert into Lading values(L2,U3,G9,1000);insert into Lading values(L3,U8,G7,800);insert into Lading values(L4,U19,G11,600);2. 首先依据数据库用户信息表审核提货单中用户是否存在

30、。(经过建立一个视图Lading_Uid显示存在用户及信息)create view Lading_Uidasselect Users.Uid,Uname,Lading.Gid,Lading.Lnumberfrom Users,Ladingwhere Users.Uid=Lading.Uid;select* from Lading_Uid;3. 若用户存在,然后依据数据库仓库库存信息审核用户所需货物数量是否充足。(经过建立一个视图Lading_Gnumber显示货物数量充足货物号及信息)create view Lading_Gnumberasselect Lading_Uid.Uid,Uname

31、,Lading_Uid.Gid,Lading_Uid.Lnumberfrom Lading_Uid,Reterporywhere Lading_Uid.Gid=Reterpory.Gid and Lading_Uid.Lnumber=Reterpory.Gnumber;select* from Lading_Gnumber;4. 审核成功后进行货物出库登记,登记内容有货物号、用户号、货物数量、日期。在OutS表中插入登记此条出库统计。(编写一个触发器Lading_outs,实现在提货单信息表Lading插入数据时,自动审核用户号和货物数量,审核完在OutS表中插入登记此条出库统计)create

32、 trigger Lading_outson Ladingafter insertasbegininsert into outS( Gid,Uid,Gnumber,MODIFYDATE)select Lading_Gnumber.Gid,Lading_Gnumber.Uid,Lading_Gnumber.Lnumber,getdate() as MODIFYDATEfrom Lading_Gnumber;delete from Lading;select* from OutS;end;7. 总结这次课程设计我们组完成了企业仓库管理系统设计,我完成了其中提货管理和用户登录模块,从需求分析到概念结

33、构设计,再到逻辑结构设计,最终到数据库物理设计及实施,亲自参与整个数据库设计过程。在建表之前,我们组一起讨论了要建多个表问题,为了降低冗余,我们将提货单信息表和出库信息表分别建表。在建立功效过程中,对触发器和存放过程了解不深刻,经过看书和上网查询完善了触发器和存放过程。经过此次课程设计,掌握了表和视图建立,也学会了触发器和存放过程建立,提升了自己写代码能力,深刻体会了数据库应用方法和设计理念,愈加深刻体会了数据库实际应用,也对很多概念使用方法有了更深入了解。同时学会了碰到困难要有吃苦耐劳精神,同时认识到了团体合作关键性。参考文件1 萨师煊, 王珊. 数据库系统概论M.北京:高等教育出版社,.2 甘仞初. . 管理信息系统M.北京:机械工业出版社,.3 李昆,SQL SERVER课程设计案例精编,北京:中国水利水电出版社,4 钱雪忠.数据库原理及应用M北京:邮电大学出版社,.5 仝春灵,数据库原理和应用SQL Server ,北京:电子工业出版社,6 辛赫(Singh.S.K)、何玉洁等.数据库系统概念、设计及应用M北京:机械工业出版社,7 周成兴.SQL和关系数据库理论M北京:清华大学出版社,

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 数据库/数据算法

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服