当前位置:文档之家› 仓库管理数据库系统设计

仓库管理数据库系统设计

数据库系统概论课程设计设计名称: 仓库管理信息系统指导老师: 杨林目录1.问题描述 ............................................................... 错误!未定义书签。

1.1背景 (1)1.2功能要求 (1)2.需求分析 ............................................................. 错误!未定义书签。

2.1数据流程图 (2)2.2数据字典 (3)3.概念结构设计 (5)3.1E-R图 (5)4.逻辑结构分析 (7)5.物理结构设计........................................................ 错误!未定义书签。

6.存储过程设计 (11)7.触发器设计 (12)8.应用程序实现 (12)9.结束语 (23)9.答辩与成绩考核 (24)1.问题描述1.1背景仓库是工厂的一个重要的中转站,仓库里能储存各种各类的货物,货物的流动性比较大,需要处理的数据较多,直接有人工检索信息和更新仓储信息比较繁琐,为了能提高仓库的管理效率,设计适合仓储管理的数据库系统是很重要的。

使用条形码管理系统, 对仓储各环节实施全过程控制管理,并可对货物进行货位、批次、保质期、配送等实现条形码标签序列号管理,对整个收货、发货、补货、集货、送货等各个环节的规范化作业, 还可以根据客户的需求制作多种合理的统计报表.爱创凭借丰富的条码资源及多年实施条码系统的经验,将条码引入仓库管理,去掉了手工书写票据和送到机房输入的步骤,解决库房信息陈旧滞后的弊病。

不论物品流向哪里,我们都可以自动跟踪。

条码技术与信息技术的结合帮助企业合理有效地利用仓库空间,以快速、准确、低成本的方式为客户提供最好的服务。

仓库管理系统是通过入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等功能,综合批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合运用的管理系统,有效控制并跟踪仓库业务的物流和成本管理全过程,实现完善的企业仓储信息管理。

该系统可以独立执行库存操作,与其他系统的单据和凭证等结合使用,可提供更为完整全面的企业业务流程和财务管理信息。

1.2功能要求工厂需要一个能够实现管理仓储功能的数据库系统,该系统的用户为仓库管理员,同时他也是系统管理员。

系统的主要功能如下:1)仓库入库管理:主要是管理员对进入仓库的货物进行登记,包括货物号、货物名、货物数量、货物价格、货主以及仓库号等。

以便统一管理,当同一货主的同种货物入库时记录追加,同时也要记录仓库入库的日志信息。

2)仓库提货管理:当货主提走货物时进行该管理,在货物出库时,进行登记,登记内容货物号、货物名、货物数量、货主、货物价格、日期等。

3)仓库查询管理:用户可按货物号、按货物名、按货主、仓库号等进行查询。

这些查询主要是用户西药知道货物资料是进行,由于只进行查询操作,所以数据以只读的形式出现。

4)货物信息维护功能:主要对货物的基本资料和信息进行维护。

其中包括货物的价格、货物的种类的变化等。

2.需求分析2.1模板分析1)仓储管理员的系统功能模块图2.1-12)用户查询模块图2.1-22.2数据流数据流图表达了数据和处理的关系,根据用户的需求分析和仓库管理系统的需求,得出如下图1-1所示的仓库管理数据流图。

图2.2—1仓库管理系统数据流2.3模板功能分析管理员系统用于实现管理员的登陆管理;用户系统用于用户的查询;仓库信息系统可以管理仓库的进出库信息,增加,删除,更新仓库信息。

3、数据字典1)数据项数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描述,仓库管理的主要数据见下表。

货物入库表:货物出库表:货主、提货人、信息表仓库:3.概念结构设计3.1 E-R图仓库管理信息系统可以划分的实体有:货主信息实体、货物信息实体、仓库信息实体、提货人信息实体,货物入库记录信息实体、货物出库记录信息实体,用E-R图一一描述这些实体。

图3-1 货主信息实体E-R 图.图3-2 提货人信息实体E-R 图图3-3信息实体E-R 图图3-6出库信息实体E-R 图图3-7总的信息实体E-R 图4.逻辑结构设计E-R 图转换成关系模式。

货主 (货主代号,货主姓名,货主电话) 货物 (货物编号,货物名称,货物数量)入库 (货物编号,货物入库时间,货物入库时价格,货物入库数量,仓库号,货主代号)出库(货物编号,货物出库数量,货物出库价格,货物出库时间,仓库号,提货人代号)仓库(仓库编号,仓库容量,货物编号)提货人(提货人代号,提货人姓名,提货人电话,提货人地址)5. 存储过程设计5.1创建列表创建货主表:CREATE TABLE 货主( 货主代号int Primary key,货主姓名char(50) not null,货主电话char(16));创建货物信息表:CREATE TABLE 货物( 货物编号int Primary key ,货物名称char(50) not null,货物数量char(50) not null );创建入库表:CREATE TABLE 入库信息( 货物编号int not null,入库时间char(30) not null,提货人代号char(10) not null,入库价格char(8) not null,入库数量int not null,仓库编号int );创建出库表:CREATE TABLE 出库信息( 货物编号int not null,出库数量int ,出库价格char(8),提货人代号char(10),出库时间char(20) not null,仓库编号int);创建仓库表:CREATE TABLE 仓库(仓库编号int Primary key,)货物编号char(10),仓库容量int);创建提货人表:CREATE TABLE 提货人( 提货人代号int Primary key,提货人姓名char(50) not null ,提货人电话char(10),提货人地址char (50));E-R图:6. 基本操作1.插入insert into 出库信息values('aaa','200','4','2010\5\30','001','111')2.更新update 货物表set 货物名称='非常可乐',货物数量='900'from 货物表where 货物编号='bbb'3.查询select * from 入库信息5.2储存过程1)创建一个查询存储过程create procedure 入库信息_货主表asselect *from 入库信息goexec 入库信息_货主表2)在入库货物插入一个元组create procedure 入库信息_1asinsertinto 入库信息values('xxx','2010\7\5','200','007','10','520')7.3建立索引为入库信息表建立货物编号索引create clustered index 入库货物on 入库信息(货物编号)为出库信息表建立货物编号索引create clustered index 出库货物on 出库信息(货物编号)6. 触发器设计1)当删除入库信息表中某一货主基本信息时触发货主表,删除相应的记录。

create trigger 入库信息_deleteon 入库信息for deleteasdelete 货主表from deleted inner join 货主表on deleted.货主代号=货主表.货主代号2)当删除出库信息表中某一货主基本信息时触发提货人表,删除相应的记录。

create trigger 出库信息_deleteon 出库信息for deleteasdelete 提货人表from deleted inner join 提货人表on deleted. 提货人代号=提货人表.提货人代号;创建视图1给货物数量大于1000的创建视图create view num_货物asselect 货物编号,货物名称,货物数量from 货物表where 货物数量>=10002给出库数量小于1000的创建视图Create view nm_出库AsSelect 提货人代号,出库数量,仓库编号,货物编号,出库价格From 出库信息Where 出库数量<10008.结束语经过了这次仓库管理系统的课程设计我从中学到了很多,同时明白了做一个小型软件的步骤和流程.如何让自己设计的软件运用到具体的实际工作中,这是一个关键的环节.还有就是程序设计和运行测试中遇到的问题该如何解决,从解决问题中我也学到了许多平时课本上所没有的知识.当然,能够完成这个仓库管理系统我自己也感觉很有成就感.运用到的开发工具和软件技术:此系统结合货物仓库管理的要求,对Visual c++数据库管理系统、SQL语言的学习和应用,主要完成货物仓库管理系统的需求分析,系统的数据库设计和实现,系统的表单设计,主控程序设计,并由此设计了数据库结构和应用程序。

系统运行结果证明,本人设计的货物仓库管理系统可以满足仓库管理者完成仓库管理的日常工作,包括材料的入库,出库以及库存材料信息的管理维护等软件还需要哪些改进:在编写源程序代码的过程中对语言的运用还需要提高,应使写出来的程序更加简洁,易读懂,更加满足实际工作的需要.要想使做出来的程序更好的利用还需根据实际需要在今后的运用中不断的改进和完善.9.答辩与成绩考核。

相关主题