版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、杭州电子科技大学 数据库课程设计课程设计手册姓 名 学 号 设计小组长 课程设计名称 商品库存管理系统 指 导 教 师 设 计 时 间 2012/9/5 至 2012/9/17杭州电子科技大学管理学院编制目录第一章 系统概述 . 111系统开发背景 . 1 12 系统开发意义 . 1第二章 系统需求分析 . 221基本信息管理 . 2 22库存管理功能 . 2 23权限管理功能 . 3 24业务流程图 . . 3 25数据流程图 . . 4 26 数据字典 . . 6第三章 系统总体设计 . 931 系统总体设计目标 . 932 系统概念设计 . . 10322关系模式 . 10第四章 逻辑结
2、构设计 . 11第五章 物理结构设计 . 13第六章 数据实施和维护 . 13第七章 数据库系统实现 . 227.1 系统实现工具简介 . 227.1.1 SQL Server 2000简介 . 22第一章 系统概述63 系统开发背景处于社会经济技术快速发展的今天,各种各样的行业竞争日益激烈。行业不断寻求自身的优势劣势,扬长避短,加强自己的竞争力,力争在新世纪经济利润的大蛋糕中分得一杯羹。然而无论出于何种时期,超市永远是人们生活离不开的一部分,大街小巷随处可见的大小型超市构建起了人们点点滴滴的生活。众所周知,若单靠工作人员手工或者借助简单的管理信息系统进行管理,特别是超市的库存,不仅耗费大量的
3、时间精力,而且在运作中由于信息不对称或者操作的时间前后不吻合,往往错误百出,严重影响运营和工作人员的工作情绪。例如在老式的仓库管理中在盘点一遍遍地核对清点,一不留神清点错误又要重新开始,对于出库入库也异常麻烦,经常需要闭库,停止仓库任何变动来进行专门清点工作。由此可见,将库存管理信息化,提高仓库管理的效率,使各种货物信息明朗化,给管理人员创造方便快捷的工作环境已经迫在眉睫。63 系统开发意义超市管理作为计算机应用的一个分支,有着手工管理无法比拟的优点:(1.使用本系统,可以迅速提升超市的库存管理水平,为降低经营成本,大大提高超市的运作效率。(2.提高效益,增强超市扩张力, 提供有效的技术保障。
4、因此,开发一套能够为超市工作人员提提供方便的库存管理系统,数据库的设计将是非常必要的。第二章 系统需求分析21 基本信息管理2.1.1 系统用户资料管理用户资料即使用该系统的人员基本信息,包括了库长,库工,采购员,仓库清算员。各种人员信息又包含其工号,密码,性别,年龄,姓名,职位。使用该数据库系统时提供其工号和密码登录即可自由进行其相应权限内的操作。当然,也可以凭借自己的工号密码查询自己的信息,而库长则因为有超级用户的权限,可以输入员工的编号查询任意员工的个人基本信息和操作记录,也可对员工的信息进行增、删、改的操作。2.1.2 供应商资料管理供应商资料主要包括超市货物的各家供应商的基本信息,包
5、括供应商号码,商家名称,商家所提供商品名称及数量,商家地址与供货商信誉度。在入库时,需要提供供应商的信息;用户也可通过输入供应商号码来查询相关供应商的基本信息,和它近一年对仓库的供货记录。2.1.3 仓库信息管理仓库信息管理仓库信息仓库的编号、仓库名称、仓库地点、仓库容量现有库存及所存储商品类别。2.1.4 商品信息管理商品信息包括了商品编号、商品类别、名称、生产日期、保质期、价格和余量等信息。商品信息管理功能模块可以实现以下功能:添加商品类别、修改商品类别、删除商品类别、查看商品类别、添加商品信息、修改商品信息、删除商品信息、查询商品信息。22 库存管理功能库存操作管理模块可以实现入库管理、
6、出库管理和库存盘点等功能。2.2.1 入库管理入库管理:库存管理员根据库存情况将采购计划反映给采购员,经批准后采购员将从供应商处订货。当收到提货通知单后,采购员将入库商品清单交至库存管理员,确定商品准确无误后生成入库记录。入库记录主要包括相关的产品信息、供应商信息、仓库信息、库存管理员即用户信息、涉及的金额和入库时间等。2.2.2 出库管理出库管理:库长接到提货通知后,根据出库计划把已批准的提货商品清单交给库工,库工根据商品清单完成商品出库,同时生成出库记录。出库记录主要包括相关的产品信息、仓库信息、用户信息、涉及金额和出库时间等。2.2.3 库存提醒库存警示是指对库存中接近安全库存或超过一定
7、数额的产品进行报警。在产品信息中,包括产品的合理数量范围和有效期限。当产品的库存数量小于安全库存时,系统进行缺货提醒;当产品的数量大于系统设定的上限时,系统进行超储提醒。产品出现缺货、超储、接近或超过有效期限时系统需报警。2.2.4 库存盘点由于人为操作等原因,系统中的库存数据与实际数据之间可能会存在误差。为保证库存数据的准确性,每隔一段时间就需要对库存进行盘点。通过对库存商品的盘点生成库存台账。当计划台账与库存台账不匹配时,系统产生库存提示,仓库管理人员经根据提示进行库存检查,并采取相应措施。23 权限管理功能2.3.1 普通用户,包括采购员,库工,供应商2.3.2 超级用户,库长24 业务
8、流程图下面试超市库存管理系统的总体业务流程图,用一下三种符号表示: 25 数据流程图数据流程图全面地描述信息系统逻辑模型。它用下面几种符号综合地反映信息在系统中的流动、处理和存储情况。 外部实体数据流 处理 数据存储顶层数据流程图: 第一层数据流程图: 第二层数据流程图 26 数据字典数据流编号:D1 数据流名称:发货单简 述:供货单位开给仓储部门的发货凭证数据流来源:供应商数据流去向:仓库存储收货部门数据项组成:货物代号+商品名称+数量+金额+时间 数据流量:1张/次数据流编号:D2 数据流名称:退货单简 述:仓储收获部门开给供应商的退货凭证 数据流来源:仓储收获部门 数据流去向:供应商数据
9、项组成:货物代号+商品名称+数量+时间 数据流量:1张/次数据流编号:D3 数据流名称:入库单简 述:仓储收货部开给存储管理部的入库凭证 数据流来源:仓储收货部 数据流去向:存储部数据项组成:货物代号+商品名称+数量+时间 数据流量:1张/次数据流编号:D4 数据流名称:出库单简 述:取货单位或个人开给仓库存储部的出库凭证 数据流来源:取货单位或个人 数据流去向:仓库存储部门数据项组成:货物代号+商品名称+数量+时间 数据流量:1张/次数据流编号:D5 数据流名称:计划单简 述:取货单位或个人开给仓库部门预期内取货的凭证单据 数据流来源:取货单位或个人 数据流去向:仓库存储部门数据项组成:货物
10、代号+商品名称+数量+时间 数据流量:1张/次处理逻辑编号:P2.1 处理逻辑名称名称:验货处理简 述:仓库收货单位对收到的货物检验处理 数据流来源:供货单位输入的数据流:发货单,订货单,质量标准处理:根据订货单和发货单进行比对,并对实际收到的货物进行比对,对收到的货物质量检验处理频率:对每批供货商发来的货物检查一次处理逻辑编号:P2.2 处理逻辑名称:库存检查简 述:仓库管理部门对仓库内存储的货物进行盘点统计 输入的数据流:计划单,当前库存剩余数据及盘点处理:对库存货物盘点,核对剩余货物,比对计划单,检查是否缺货,如缺货或将要不足,想采购发出通知输出的数据流:如果缺货,发出缺货通知,及对应商
11、品种类信息以及数量大小,时间期限。数据流量:每次计划单核对一次处理逻辑编号:P2.3 处理逻辑名称:出入库处理简 述:仓库管理部门在收到进货单和出货单后的对仓储货物的处理 输入的数据流:进货单,出货单,并按照相应单据进出货 处理:按照相应单据进行处理输出的数据流:实际收到的或者发出的 货物代号+商品名称+数量+时间 处理频率:1批/次处理逻辑编号:P2.4 处理逻辑名称:库存提示简 述:仓库管理部门在收到计划单后根据仓库内存储的数据和计划单上数据的比较向采购部门发出提示输入的数据流:库存台帐,计划台帐处理:对输入的库存台帐和计划台帐比对,如有不对,发出通知 数据项组成:不相符的条目信息,包括:
12、货物代号+商品名称+数量+时间 数据流量:每种商品每月处理一次处理逻辑编号:P2.5 处理逻辑名称:查询打印简 述:根据现有数据统计打印输出输入的数据流:供应商信息,商品信息,合同台账,计划台账 处理:根据相关单位或个人的需求打印出相应的信息输出的数据流:货物代号+商品名称+数量+时间+供应商信息+批次+合同台账+计划台账 处理频率:1次/次第三章 系统总体设计31 系统总体设计目标商品库存管理系统是超市经营不可缺少的部分,它对于超市的管理者和决策者来说都至关重要,所以仓库货物管理系统应该能够为用户提供充足的信息和快捷的查询手段。本库存管理系统主要针对传统的库存管理效率低,商品的进销存控制困难
13、,可以实现全面管理仓库中存储的商品和货物,缩短了库存信息流转时间,使超市的物料管理层次分明、井然有序、为采购和促销提供依据,从而提高超市的经营效率。32 系统概念设计 322关系模式1 23 45 6 7 8、商品价格变动表(商品编号,生产日期,变动前价格,变动后价格)第七张表,确定同一类商品在某一仓库的库存量上限以及下限,便于确定商品是否缺货或库存过多。第八张表,在节假日,可能会进行促销,改动商品价格。某大型超市的仓库,遍布全国各地。不同的商品有不同的编号,对于同一商品,因为生产日期的不同,所处理的手段也不同。公司部门可根据此8张表,查询具体时间的进货(入库),销售(出库)情况,可查询快到期
14、的商品,及时进行处理,可进行商品库存的查询,及时进行进货或加快销售等处理。每个仓库的同一类商品的最大最低库存量记录在商品总库存表中,库存表记录的是不同商品或同商品不同生产日期的库存量。商品价格变动表是记录商品价格因促销或缺货等因素而造成的改变。假定,仓库中商品最大库存的80%为合适的库存量,低于库存下限的为缺货商品。第四章 逻辑结构设计1. 2.3. 4. 5. 6. 7. 8. 第五章 物理结构设计由于物理结构设计和实际紧密相关,因此在没有结合实际情况的前提下就贸然的剔除物理结构设计是不正确的,物理结构的设计应该和超市的营业规模紧密相关。对于较小的超市,以一家店为例,考虑到规模很小,数据的的
15、存储容量并不会太大,在现代硬件设备的性能相对于价格很不错的情况下,一台性能较好的个人PC 就可以蛮族需要,硬盘上普通的硬盘容量也已经超过300G ,而300G 的硬盘空间对于这种情况下的系统来说绝对是足够了的。因此,如果如果规模较小,一台组装的家用PC 已经满足了我们的需求。内存上3G 已经够了,操作系统上考虑到数据库我们可以选择window server2000,cpu 上普通的双核超线程cpu 超过2.5G 就已经能够满足我们的要求。如果规模较大,可以采用集群的方式,本身Oracle 数据库就可以同时处理很大批量的读写请求,数据库并不需要改变什么,硬件上只要集群建起来就可以了。如果规模更大
16、,可以考虑数据库集群,硬件上把PC 集群规模扩大,建立多个工作中心来并行处理请求。具体问题应结合实际具体分析。第六章 数据实施和维护数据库表1. 2.3. 4.5.6. 出库(商品编号,仓库编号,生产日期,出库量,出库时间)7.8.63 创建表-表一:商品表create table products(pno char(5 primary key,pname varchar2(30 not null,pvaliddate number(2 not null check(pvaliddate>0,pprice number(5 not null check(pprice>0;-表二:仓
17、库表create table warehouses(wno char(5 primary key,wname varchar2(30 not null,wplace varchar2(100 not null;-表三:供应商表create table providers(pdno char(5 primary key,pdname varchar2(30 not null,pdplace varchar2(100 not null,pdphonenum varchar2(11 not null;-表四:供应表create table supply(pdno char(5,pno char(5,
18、productiondate date,supplydate date not null,supplyamount number(5 not null check(supplyamount>0;-主键约束alter table supply add constraint supply_pdno_pno_pdate_pkprimarykey(pdno,pno,productiondate;-外键约束alter table supply add constraint supply_pdno_fk foreign key(pdno references providers(pdno;alter
19、 table supply add constraint supply_pno_fk foreign key(pno references products(pno;-表五:入库表create table storgein(pno char(5,wno char(5,productiondate date not null,storgeinamount number(5 not null check(storgeinamount>0,storgeintime date not null;-主键约束alter table storgein add constraint storgein_p
20、no_wno_pdate_pk primary key(pno,wno,productiondate;-外键约束alter table storgein add constraint storgein_pno_fk foreign key(pno references products(pno;alter table storgein add constraint storgein_wno_fk foreign key(wno references warehouses(wno;-表六:出库表create table storgeout(pno char(5,wno char(5,produc
21、tiondate date not null,storgeoutamount number(5 check(storgeoutamount>0,storgeouttime date not null;-主键约束alter table storgeout add constraint storgeout_pno_wno_pdate_pk primary key(pno,wno,productiondate;-外键约束alter table storgeout add constraint storgeout_pno_fk foreign key(pno references product
22、s(pno;alter table storgeout add constraint storgeout_wno_fk foreign key(wno references warehouses(wno;-表七:总库存表create table totalstorge(pno char(5,wno char(5,total number(5,storgeupper number(5 not null check(storgeupper>0,storgelower number(5 not null check(storgelower>0;-主键约束alter table total
23、storge 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 foreign key(wno references warehouses(wno;-表八:create table priceadjust(pno
24、 char(5,productiondate date not null,oldprice number(5 not null check(oldprice>0,newprice number(5 not null check(newprice>0;-主键约束alter table priceadjust add constraint priceadjust_pdate_pk primary key(pno,productiondate;-外键约束alter table priceadjust add constraint priceadjust_pno_fk foreign ke
25、y(pno references products(pno;63 插入测试数据-插入测试数据-1. 商品insert into products values('p001','薯片',8,3.5;insert into products values('p002','AD钙奶',6,2;insert into products values('p003','清风抽纸',24,10;insert into products values('p004','益达木糖醇',1
26、0,12;select * from products;-2. 仓库表insert into warehouses values('w001','杭州仓库',' 杭州'insert into warehouses values('w002','上海仓库',' 上海'insert into warehouses values('w003','北京仓库',' 北京'select * from warehouses;-3. 供应商表insert into p
27、roviders values('s001','供应商1',' 浙江杭州','057186915110'insert into providers values('s002','供应商2',' 浙江金华','057112345678'insert into providers values('s001','供应商3',' 江苏南京','057188327015'-4 供应表(供应商编号,商品编号, 生产日
28、期,供应量, 供应日期)insert into supplyvalues('s001','p001',to_date('2012-08-26','yyyy-mm-dd',80,to_date('2012-09-15','yyyy-mm-dd'-5. 入库(商品编号,仓库编号,生产日期,入库量,入库时间)insert into storgeinvalues('p001','w001',to_date('2012-08-26','yyyy-mm-d
29、d',80,to_date('2012-09-15','yyyy-mm-dd'-6. 出库(商品编号,仓库编号,生产日期,出库量,出库时间)insert into storgeoutvalues('p001','w001',to_date('2012-09-01','yyyy-mm-dd',20,to_date('2012-09-15','yyyy-mm-dd'-7. 总库存表(商品编号,仓库编号,库存上限,库存下限)insert into totalstor
30、gevalues('p001','w001',1000,50;-8. 价格调整(商品编号,生产日期,变动前价格,变动后价格)insert into priceadjustvalues('p001',to_date('2012-09-01','yyyy-mm-dd',3.5,3;63 查询操作-简单查询:查询所有的供应商信息、产品信息、仓库信息select * from supply; -供应表select * from totalstorge; -总库存表-2.增加操作-想商品表中添加一条产品记录insert in
31、to products values('p0008','麦兜小面包',12,3.5; -3.修改操作-修改商品表的商品编号为p0007的名称update products set pname='旺仔牛奶升级版' where pno='p0007' -修改商品表的商品编号为p0007的价格update products set pprice=pprice+1 where pno='p0007'-4.删除操作-删除商品表中商品编号为p0005的记录delete from products where pno='
32、p0005'-删除商品表中商品编号为p0006的记录delete from products where pno='p0006'1、实现各种查询(简单查询、模糊查询、连接查询、嵌套查询等)-模糊查询:-查询供应商名称中带有薯片的商品记录select * from products where pname like '%薯片%'-查询供应商名称中没有薯片的商品记录select * from products where pname not like '%薯片%'-连接查询:-查询入库商品的详细信息select p.* from produc
33、ts p,storgein sinwhere p.pno = sin.pno;-查询出库商品的详细信息select p.* from products p,storgeout soutwhere p.pno = sout.pno;-查询商品编号为p0001的仓库详细信息select ts.pno,w.* from warehouses w,totalstorge tswhere w.wno=ts.wno and ts.pno='p0001'-查询商品编号为p0002的仓库详细信息select ts.pno,w.* from warehouses w,totalstorge ts
34、where w.wno=ts.wno and ts.pno='p0002'-查询商品编号为p0003的仓库详细信息select ts.pno,w.* from warehouses w,totalstorge tswhere w.wno=ts.wno and ts.pno='p0003'-嵌套查询-查询供应商s0001, 供应商品的详细信息select * from productswhere pno in(select pno from supply where pdno='s0001'-查询入库商品的详细信息select p.* from p
35、roducts p,storgein sinwhere p.pno = sin.pno;-查询商品编号为p0001的仓库详细信息select * from warehouseswhere wno =(select wno from totalstorge where pno='p0001'-查询商品编号为p0002的仓库详细信息select * from warehouseswhere wno =(select wno from totalstorge where pno='p0002'-查询商品编号为p0003的仓库详细信息select * from ware
36、houseswhere wno =(select wno from totalstorge where pno='p0003'-查询商品编号为p0004的仓库详细信息select * from warehouseswhere wno =(select wno from totalstorge where pno='p0004'-查询商品编号为p0005的仓库详细信息select * from warehouseswhere wno =(select wno from totalstorge where pno='p0005'2、设计一个存储过程,
37、要求在存储过程中使用游标;设计一个触发器,实现表间的级联删除或修改。-5.存储过程-A -5.1创建一个存储过程,将所有的商品价格都增加一元create or replace procedure pro_adjustpriceasbeginupdate products set pprice=pprice+1;commit;end;-5.2执行该存储过程beginpro_adjustprice;end;-5.3删除该存储过程drop procedure pro_adjustprice;-B -5.1创建一个存储过程,删除所以的商品信息create or replace procedure pr
38、o_delproductsasbegindelete from products;commit;end;-5.2执行该存储过程beginpro_delproducts;end;-5.3删除该存储过程drop procedure pro_delproducts;-C -5.1创建一个存储过程,修改商品的保质期create or replace procedure pro_molvaliddateasbeginupdate products set validdate=validdate+3;commit;end;-5.2执行该存储过程beginpro_molvaliddate;end;-5.3删
39、除该存储过程drop procedure pro_molvaliddate;-D -5.1创建一个存储过程,插入多条商品信息create or replace procedure pro_insertproductsasbeginfor pno in 1.10 loopinsert into products values(pno,'test_procedure',0,0;commit;end loop;end;-5.2执行该存储过程beginpro_insertproducts;end;-5.3删除该存储过程drop procedure pro_insertproducts;
40、-6.触发器-A-6.1创建触发器, 限制只能在工作日对该表进行插入操作create or replace trigger tri_products_insertbefore insert on productsif to_char(sysdate,'DY' in('星期六',' 星期日'thenraise_application_error(-20001,'你只能在工作时间(周一至周五)对商品表进行插入操作'end if;end;-B-6.1创建触发器, 限制产品表信息的删除create or replace trigger t
41、ri_products_delbefore delete on productsfor each rowbeginraise_application_error(-20001,'产品表中的信息不能删除' end;-D-6.1创建触发器, 限制只能在工作时间对表进行插入操作create or replace trigger tri_providers_modifybefore insert on providersbeginif to_char(sysdate,'DY' in('星期六',' 星期日' or(to_char(sysdate,'HH24:MI' not between '08:00' and '18:00' thenraise_application_error(-20001,'你只能在工作时间对供应商表进行插入操作'end if;end;-E-6.1创建触发器, 限制删除操作create or replace trigger tri_prividers_modifybefore delete on providersfo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版拌合料生产设备维修与保养合同4篇
- 2025年度农业休闲观光区绿化景观建设与运营合同4篇
- 2025版安防弱电系统集成服务合同3篇
- 2025年度个人肖像摄影合同范本集4篇
- 二零二五年度南京体育健身行业劳务派遣合同
- 二零二五年度木材行业安全生产责任保险合同
- 第8~9讲 反应动力学基础知识
- 2025年度建筑幕墙工程安全质量责任合同4篇
- 二零二五年度农业生态环境保护与修复服务合同
- 二零二五年度使用知识产权许可合同
- 中国末端执行器(灵巧手)行业市场发展态势及前景战略研判报告
- 北京离婚协议书(2篇)(2篇)
- 2025中国联通北京市分公司春季校园招聘高频重点提升(共500题)附带答案详解
- 康复医学科患者隐私保护制度
- Samsung三星SMARTCAMERANX2000(20-50mm)中文说明书200
- 2024年药品质量信息管理制度(2篇)
- 2024年安徽省高考地理试卷真题(含答案逐题解析)
- 广东省广州市2024年中考数学真题试卷(含答案)
- 高中学校开学典礼方案
- 内审检查表完整版本
- 3级人工智能训练师(高级)国家职业技能鉴定考试题及答案
评论
0/150
提交评论