欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库课程设计仓库库存管理系统(23页).doc

    • 资源ID:36703950       资源大小:437.50KB        全文页数:23页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库课程设计仓库库存管理系统(23页).doc

    -数据库课程设计仓库库存管理系统-第 23 页 数据库设计课程设计报告设计题目:仓库库存管理系统设计与实现 学院名称: 信息工程学院 专业班级: 13计本2 姓 名: 刘 飞 学 号: 1312210243 目 录一.概述3系统开发背景3系统开发意义3开发运行环境3二.需求与功能分析4基本信息管理42.2.1 入库管理4权限管理功能5数据流程图5数据字典63概要设计9商场库存管理系统功能图9对各部分功能的分析9三.数据库设计10系统存在的实体与属性10系统实体间的联系10画出ER模型图10把ER模型图转换为关系表10定义主键约束、外键约束13描述每一个基本表关系,体现规范化设计思想13数据库创建SQL脚本145 应用程序设计14数据库表146、系统关键技术实现19存储过程设计19触发器设计20视图设计207 系统测试21插入测试数据21.增加操作237.3.修改操作237.4.删除操作23查询操作248 总结26一. 概述1.1 系统开发背景生产力的发展以及人的生活就决定了要有琳琅满目的商品,如果仅仅依靠人工管理好商场里的众多的商品,需要浪费大部分的人力物力,还会造成较高的人工失误。会出现帐目对不上、商品数量出现差距等等一系列的问题,严重影响运营和工作人员的工作情绪。这就需要我们开发一个商场资源管理系统来很大程度上减少这些问题的发生,而且还可以减少资源和不必要的浪费。有计划而合理的经营商城,方便对商场资源人、物进出的记录及其销售审记, 实现数字化、科学化、信息化管理,提高管理效率,降低经营成本。从而更合理的利用各种资源。处于社会经济技术快速发展的今天各种各样的行业竞争日益激烈。行业不断寻求自身的优势劣势,扬长避短,加强自己的竞争力,力争在新世纪经济利润的大蛋糕中分得一杯羹。 利用商场库存管理系统可以提高商场的运作力,提高行业的竞争力。1.2 系统开发意义商场管理作为计算机应用的一个分支有着手工管理无法比拟的优点(1).使用本系统可以迅速提升商场的库存管理水平,为降低经营成本,大大提高商场的运作效率。 (2).提高效益增强商场扩张力提供有效的技术保障。因此开发一套能够为商场工作人员提提供方便的库存管理系统数据库的设计将是非常必要的。1.3 开发运行环境数据库系统:Microsoft SQL server Management Studio 程序编写语言:Java程序编辑软件:Eclipse或My Eclipse操作系统要求: Windows 8二. 需求与功能分析1.1 基本信息管理2.1.1 系统用户资料管理 用户资料即使用该系统的人员基本信息,包括了库长、库工、采购员、仓库清算员。各种人员信息又包含其工号、密码、性别、年龄、姓名、职位。使用该数据库系统时提供其工号和密码登录即可自由进行其相应权限内的操作。当然,也可以凭借自己的工号密码查询自己的信息,而库长则因为有超级用户的权限,可以输入员工的编号查询任意员工的个人基本信息和操作记录,也可对员工的信息进行增、删、改的操作。 2.1.2 供应商资料管理 供应商资料主要包括商场货物的各家供应商的基本信息,包括供应商号码商家名称,商家所提供商品名称及数量,商家地址与供货商信誉度。在入库时需要提供供应商的信息,用户也可通过输入供应商号码来查询相关供应商的基本信息和它近一年对仓库的供货记录。 2.1.3 仓库信息管理 仓库信息管理仓库信息仓库的编号、仓库名称、仓库地点、仓库容量现有库存及所存储商品类别。 2.1.4 商品信息管理 商品信息包括了商品编号、商品类别、名称、生产日期、保质期、价格和余量等信息。商品信息管理功能模块可以实现以下功能,添加商品类别、修改商品类别、删除商品类别、查看商品类别、添加商品信息、修改商品信息、删除商品信息、查询商品信息。 1.2 库存管理功能库存操作管理模块可以实现入库管理、出库管理和库存盘点等功能。2.2.1 入库管理 入库管理,库存管理员根据库存情况将采购计划反映给采购员,经批准后采购员将从供应商处订货。当收到提货通知单后,采购员将入库商品清单交至库存管理员,确定商品准确无误后生成入库记录。入库记录主要包括相关的产品信息、供应商信息、信息、库存管理员即用户信息、涉及的金额和入库时间等。 2.2.2 出库管理 出库管理,库长接到提货通知后,根据出库计划把已批准的提货商品清单交给库工,库工根据商品清单完成商品出库,同时生成出库记录。出库记录主要包括相关的产品信息、仓库信息、用户信息、涉及金额和出库时间等。 2.2.3 库存提醒 库存警示是指对库存中接近安全库存或超过一定数额的产品进行报警。在产品信息中,包括产品的合理数量范围和有效期限。当产品的库存数量小于安全库存时,系统进行缺货提醒,当产品的数量大于系统设定的上限时,系统进行超储提醒。产品出现缺货、超储、接近或超过有效期限时系统需报警。 2.2.4 库存盘点 由于人为操作等原因,系统中的库存数据与实际数据之间可能会存在误差。为保证库存数据的准确性,每隔一段时间就需要对库存进行盘点。通过对库存商品的盘点生成库存台账。当计划台账与库存台账不匹配时,系统产生库存提示,仓库管理人员经根据提示进行库存检查,并采取相应措施。1.3 权限管理功能2.3.1 普通用户:包括采购员,库工,供应商 2.3.2 超级用户:管理员1.4 数据流程图顶层数据流图第1层数据流图1.5 数据字典数据流编号:D1 数据流名称:发货单 简 述:供货单位开给仓储部门的发货凭证数据流来源供应商 数据流去向:仓库存储收货部门 数据项组成:货物代号+商品名称+数量+金额+时间 数据流量:1张/次 数据流编号D2 数据流名称:退货单 简 述:仓储收获部门开给供应商的退货凭证 数据流来源:仓储收获部门 数据流去向:供应商 数据项组成:货物代号+商品名称+数量+时间 数据流量:1张/次 数据流编号D3 数据流名称:入库单 简 述:仓储收货部开给存储管理部的入库凭证 数据流来源:仓储收货部 数据流去向:存储部 数据项组成:货物代号+商品名称+数量+时间 数据流量:1张/次 数据流编号D4数据流名称:出库单 简 述:取货单位或个人开给仓库存储部的出库凭证 数据流来源:取货单位或个人 数据流去向:仓库存储部门 数据项组成:货物代号+商品名称+数量+时间 数据流量:1张/次 数据流编号D5 数据流名称:计划单 简 述:取货单位或个人开给仓库部门预期内取货的凭证单据 数据流来源:取货单位或个人 数据流去向:仓库存储部门 数据项组成:货物代号+商品名称+数量+时间 数据流量:1张/次处理逻辑编号:P2.1 处理逻辑名称:验货处理 简 述:仓库收货单位对收到的货物检验处理 数据流来源:供货单位 输入的数据流:发货单、订货单、质量标准 处理:根据订货单和发货单进行比对,并对实际收到的货物进行比对,对收到的货物质量检验 处理频率:对每批供货商发来的货物检查一次 处理逻辑编号P2.2 处理逻辑名称:库存检查 简 述:仓库管理部门对仓库内存储的货物进行盘点统计 输入的数据流:计划单、当前库存剩余数据及盘点 处理:对库存货物盘点核对剩余货物比对计划单检查是否缺货如缺货或将要不足,想采购发出通知 输出的数据流:如果缺货发出缺货通知及对应商品种类信息以及数量大小时间期限。 数据流量:每次计划单核对一次 处理逻辑编号:P2.3 处理逻辑名称:出入库处理 简 述:仓库管理部门在收到进货单和出货单后的对仓储货物的处理 输入的数据流:进货单、出货单,并按照相应单据进出货 处理:按照相应单据进行处理 输出的数据流:实际收到的或者发出的 货物代号+商品名称+数量+时间 处理频率:1批/次 处理逻辑编号:P2.4 处理逻辑名称:库存提示 简 述:仓库管理部门在收到计划单后根据仓库内存储的数据和计划单上数据的比较向采购部门发出提示 输入的数据流:库存台帐计划台帐 处理:对输入的库存台帐和计划台帐比对如有不对发出通知 数据项组成:不相符的条目信息包括货物代号+商品名称+数量+时间 数据流量:每种商品每月处理一次 处理逻辑编号P2.5 处理逻辑名称:查询打印 简 述:根据现有数据统计打印输出 输入的数据流:供应商信息商品信息合同台账计划台账 处理:根据相关单位或个人的需求打印出相应的信息 输出的数据流:货物代号+商品名称+数量+时间+供应商信息+批次+合同台账+计划台账 处理频率:1次/次3概要设计商场库存管理系统功能图对各部分功能的分析信息基本信息管理功能是对系统用户以及商品商品的各种信息的增加、删除、修改和查询,其中商品的查询分为多钟查询,通过查询可以方便的查找出各种商品库存管理功能是对仓库的商品进行管理,包括入库管理、出库管理、库存盘点和库存提醒,通过对仓库管理能过清楚的坚查各商品。三. 数据库设计1.1 系统存在的实体与属性商品(商品编号商品名称、保质期、价格) 仓库(仓库编号、仓库名称、仓库地点) 供应商(供应商编号、供应商名称、供应商地址、联系方式)1.2 系统实体间的联系供应商供应商品商品进入仓库商品运出仓库1.3 画出ER模型图供应商商品仓库供应供应商名称联系电话仓库地点仓库编号仓库名称商品编号商品名称保质期价格MNP供应商编号供应量生产日期供应商编号入库出库入库量出库量1N1N1.4 把ER模型图转换为关系表1.1.1. 商品表(products)字段名称含义字段类型约束Pno商品编号Char(5)Primary keyPname商品名称Varchar(30)Not nullPvaliddate保质期(单位:月)IntNot null,>0Pprive商品价格numericNot null,>01.1.2. 仓库表(warehouses)字段名称含义字段类型约束Wno仓库编号Char(5)Primary keyWname仓库名称Varchar(30)Not nullwplace仓库地点Varchar(100)Not null1.1.3. 供应商表(providers)字段名称含义字段类型约束Pdno供应商编号char(5)Primary keyPdname供应商名称Varchar(30)Not nullPdplace 供应商地址Varchar(100)Not nullPdphonenum联系方式Varchar(11)Notnull1.1.4. 供应表(supply)字段名称含义字段类型约束Pdno供应商编号Char(5)外键,引用providers表的pdno字段:联合主键Pno商品编码Char(5)外键,引用products表的pno字段。联合主键Productiondate生产日期Date 联合主键Supplydate供应日期DateNot nullSupplyamount供应量IntNot null ,>01.1.5. 入库表(storgein)字段名称含义字段类型约束Pno商品编号Char(5)外键,引用products表的pno字段;联合主键Wno仓库编号Char(5)外键,引用warehouses表的wno字段;联合主键Productiondate生产日期Date联合主键Storgeinamount入库量IntNot nullStorgeintime入库时间DateNot null1.1.6. 出库表(storgeout)字段名称含义字段类型约束Pno商品编号Char(5)·外键,引用products表的pno字段;联合主键Wno仓库编号Char(5)外键,引用warehouses表的wno字段,联合主键Productiondate生产日期Date联合主键Storgeoutamount出库量IntNot null ,>0Storgeouttime出库时间DateNot null1.1.7. 总库存表(totalstorge)字段名称含义字段类型约束Pno商品编号Char(5)外键,引用products表的pno字段,联合主键Wno仓库编号Char(5)外键,引用warehouses表的Wno字段,联合主键Storgeupper库存上限IntNot null ,>0Storgelower 库存下限IntNot null >01.1.8. 价格变动表字段名称含义字段类型约束Pno商品编号Char(5)外键,引用products表的pno字段,联合主键Productiondate生产日期Date联合主键Oldprice变动前价格IntNot null >0Newprice变动后价格IntNot null >01.1.9. 用户表users)字段名称含义字段类型约束Uno用户编号Char(5)Primary keyUname用户名称Varchar(30)Not nullUaccount用户账号Varchar(30)Not nullUpassword用户 密码Varchar(30)Not null1.5 定义主键约束、外键约束供应表 主键约束、外键约束入库表 主键约束、外键约束出库表 主键约束、外键约束总库存表 主键约束、外键约束价格调整表 主键约束、外键约束5 应用程序设计数据库表 转化为关系模式:1).商品(商品编号商品名称、保质期、价格) 2).仓库(仓库编号、仓库名称、仓库地点) 3).供应商(供应商编号、供应商名称、供应商地址、联系方式) 4).供应(商品编号、供应商编号、生产日期、供应量) 5).入库(商品编号、仓库编号、生产日期、入库量、入库时间) 6).出库(商品编号、仓库编号、生产日期、出库量、出库时间) 7).商品总库存(商品编号、仓库编号、库存上限、库存下限) 8).商品价格变动表(商品编号、生产日期、变动前价格、变动后价格)在数据库中创建表,并添加主键和外键约束-表一商品表create table products( pno char(5) primary key, pname varchar(30) not null, pvaliddatetime int not null check(pvaliddatetime>0), pprice numeric not null check(pprice>0) -表二仓库表 create table warehouses( wno char(5) primary key, wname Varchar(30) not null, wplace Varchar(100) not null-表三供应商表 create table providers( pdno char(5) primary key, pdname Varchar(30) not null, pdplace Varchar(100) not null, pdphonenum Varchar(11) not null-表四供应表 create table supply( pdno char(5) not null, pno char(5) not null, productiondatetime datetime not null, supplydatetime datetime not null, supplyamount int not null check(supplyamount>0) -主键约束 alter table supply add constraint supply_pdno_pno_pdatetime_pk primary key(pdno,pno,productiondatetime); -外键约束 alter table supply add constraint supply_pdno_fk foreign key(pdno) references providers(pdno); alter table supply add constraint supply_pno_fk foreign key(pno) references products(pno); -表五入库表 create table storgein( pno char(5) not null, wno char(5) not null, productiondatetime datetime not null, storgeinamount int not null check(storgeinamount>0), storgeintime datetime not null-主键约束 alter table storgein add constraint storgein_pno_wno_pdatetime_pk primary key(pno,wno,productiondatetime);-外键约束alter table storgein add constraint storgein_pno_fk foreign key(pno) references products(pno); alter table storgein add constraint storgein_wno_fk foreignkey(wno) references warehouses(wno); -表六出库表 create table storgeout( pno char(5) not null, wno char(5) not null, productiondatetime datetime not null, storgeoutamount int check(storgeoutamount>0), storgeouttime datetime not null -主键约束alter table storgeout add constraint storgeout_pno_wno_pdatetime_pk primarykey(pno,wno,productiondatetime);-外键约束alter table storgeout add constraint storgeout_pno_fk foreignkey(pno) references products(pno);alter table storgeout add constraint storgeout_wno_fk foreign key(wno) references warehouses(wno); -表七总库存表 create table totalstorge( pno char(5) not null, wno char(5) not null, total int, storgeupper int not null check(storgeupper>0), storgelower int not null check(storgelower>0)-主键约束 alter table totalstorge add constraint totalstorge_pno_wno_pk primary key(pno,wno); -外键约束alter table totalstorge add constraint totalstorge_pno_fk foreign key(pno) references products(pno);alter table totalstorge add constraint totalstorge_wno_fk foreignkey(wno) references warehouses(wno); -表八 价格调整表create table priceadjust( pno char(5) not null, productiondatetime datetime not null, oldprice int not null check(oldprice>0), newprice int not null check(newprice>0)-主键约束 alter table priceadjust add constraint priceadjust_pdatetime_pk primary key(pno,productiondatetime);-外键约束 alter table priceadjust add constraint priceadjust_pno_fk foreign key(pno) references products(pno);-表九用户表create table users( uno char(5) primary key, uname varchar(30) not null, uaccount varchar(30) not null , upassword varchar(30) not null ,6、系统关键技术实现存储过程设计1.1.1. 创建一个存储过程将所有的商品价格都增加一元create procedure pro_adjustprice as begin update products set pprice=pprice+1; end; 1.1.2. 创建一个存储过程删除所以的用户信息create procedure pro_delproducts as begin delete from users; end;1.1.3. 创建一个存储过程修改商品的保质期create procedure pro_ modifydatetime as begin update products set pvaliddate=pvaliddate+3; end;建立进出仓的存储过程入仓:create procedure material_in_prorudan_no int,supplier_no varchar(10),material_no varchar(10),in_data datetime,ru_qty bigint,supp_pay bigint,staff_no varchar(10),out varchar(20)='0' outputasDECLAREn1 intselect n1=count(material_no) from materialwhere material_no=material_noif (n1=0)beginselect out='此物料不存在,如果要进仓,请先登记新物料信息'returnendelsebegininsert into material_in values(rudan_no,supplier_no,material_no,in_data,ru_qty,supp_pay,staff_no)update cunhuo set qty=qty+ru_qty where material_no=material_noselect out='操作成功!'return endgo出仓:create proc material_out_pro chudan_no int,kehu_no varchar(10),material_no varchar(10),out_data datetime,chu_qty bigint,kehu_pay bigint,staff_no varchar(10),out varchar(20)='0' outputasDECLAREn1 intselect n1=count(material_no) from materialwhere material_no=material_noif (n1=0)beginselect out='此物料不存在!'returnendelsebeginif chu_qty>(select qty from cunhuo where material_no=material_no)beginselect out='库存数量不足!'returnendelsebegininsert into material_out values(chudan_no,kehu_no,material_no,out_data,chu_qty,kehu_pay,staff_no)update cunhuo set qty=qty-chu_qty where material_no=material_noselect out='操作成功!'return endend触发器设计1.1.1. 创建触发器,限制只能在工作日对该表进行插入操作create trigger tri_products_insert before insert on products begin if to_char(sysdatetime,'DY') in('星期六','星期日') then raise_application_error(-20001,'你只能在工作时间周一至周五对商品表进行插入操作'); end if; end;1.1.2. 创建触发器,限制产品表信息的删除create trigger tri_products_del before delete on products for each row begin raise_application_error(-20001,'产品表中的信息不能删除'); end;1.1.3. 创建触发器,修改products表编号同时修改supply表编号Create Trigger truproducts On products -在products表中创建触发器 for Update -为什么事件触发 As -事件触发后所要做的事 if Update(pno) begin Update supply Set pno= From supply br ,Deleted d ,Inserted i -Deleted和Inserted临时表 Where = end视图设计1.1.1. 保存商品基本信 息和库存量信息create or replace view productsdetail as select p.*, from products p,totalstorge t7 系统测试-插入测试数据 商品 insert into products values('p001','薯片',8,); insert into products values('p002','AD钙奶',6,2); insert into products values('p003','清风抽纸',24,10); insert into products values('p004','益达木糖醇',10,12); select * from products; 7.2.仓库表insert into warehouses values('w001','榆林仓库','榆林');insert into warehouses values('w002','西安仓库','西安');insert into warehouses values('w003','延安仓库','延安');select * from warehouses; 7.1.3.供应商表insert into providers values('s001','供应商','榆林靖边','57186915110'); insert into providers values('s002','供应商','西安盱眙','07112345678'); insert into providers values('s003','供应商','延安子长','57188327015');select * from providers;7.1.4 供应表,供应商编号,商品编号,生产日期,供应日期,供应量。 insert into supply values('s001','p001', '2016-12-25 12:56', '2016-12-28 12:56',80)select * from supply;7.1.5.入库商品编号仓库编号生产日期入库量入库时间 Insert into storgein values('p001','w001', '2016-08-26 13:45',70,'2016-09-15');select * from storgein;7.1.6.出库商品编号仓库编号生产日期出库量出库时间 insert into storgeout values('p001','w001', '2016-09-01 9:42',20, '2016-09-15 1:47'); select * from storgeout;7.1.7.总库存表商品编号仓库编号库存上限库存下限 insert into totalstorge values('p001','w001',1000,50,8); select * from totalstorge;7.1.8.价格调整商品编号生产日期变动前价格变动后价格 insert into priceadjust values('p001','2016-09-01 8:08',3); select * from priceadjust7.1.9.用户信息insert into users values('u001','刘飞','12345','111');insert into users values('u002','杨昀','253','116');insert into users values('u001','乔欢','12345','111');insert into users values('u001','任宇楷','12345','111');select * from users;.增加操作 -想商品表中添加一条产品记录 insert into products values('p0008','麦兜小面包',12,);select * from products;.修改操作 修改商品表的商品编号为p0027的名称 update products set pname='薯片升级版' where pno='p002' select * from products; 7.4.删除操作

    注意事项

    本文(数据库课程设计仓库库存管理系统(23页).doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开