仓库管理数据库.doc_第1页
仓库管理数据库.doc_第2页
仓库管理数据库.doc_第3页
仓库管理数据库.doc_第4页
仓库管理数据库.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计说明书课程设计名称: 数据库课程设计 课程设计题目: 仓库管理系统 学 院 名 称: 信息工程学院 专业: 计算机科学与技术 班级: 学号: 姓名: 评分: 教师: 2010 年 12 月 24 日仓库管理系统目 录第一章 需求分析阶段1 1.1 系统需求分析1 1.2 数据流图1 1.3 数据字典2 第二章 概念结构设计阶段6 2.1 E-R图的设计6 第三章 逻辑结构的设计阶段8 3.1 关系模式. 8 第四章 系统功能设计阶段. 9 4.1 功能需求分析. 9 4.2 系统功能模块图. 10 4.3 建立存储过程. 11 4.4 建立触发器. 12 4.5 索引的建立. 12 4.6 表的建立. 13 第五章 参考文献. 16 后 记. 17第一章 需求分析 1.1、系统需求分析仓库管理系统主要用于仓库货品信息的管理,系统包括仓库管理、入库、出库和一些统计查询等几部分。仓库管理系统实现对货品信息的管理和统计,仓库信息,供货单位和管理员信息的查看及维护。仓库管理人员可以浏览、查询、添加、删除等产品的基本信息。1 、仓库是用来存放货物的,货物进入仓库要进行登记记录,货物从仓库出库也要进行登记记录,这是仓库管理的主要内容。2 、产品出库管理,可以打印出库表,确认产品出库;3、 初始库存设置,设置库存的初值,库存的上下警戒限;4 、可以进行查库,反映每月、年的库存情况;5 、可以查询产品入库情况、出库情况、当前库存情况,可以按出库单、入库单,产品、时间进行查询;1.2、数据流图 (1)第0层数据流图: 图 1-1 第0层数据流图 首先客户提供货物清单,如果是入库,则在仓库管理处理后将信息返回给客户;而如果是出库则将出库货物交割给客户,返回信息。这是最顶层的数据流图,最为抽象。 (2)第一层数据流图: 图 1-2 第一层数据流图首先客户提供货物及货物清单,如果是入库的话则执行入库操作,并在数据库中添加相应的货物及客户信息,并将信息返回给客户;如果是出库的话,则执行出库操作,并且在仓库管理数据库中删除相应的货物信息,并将信息返回给客户,在货物出库之后还要执行审核记账操作,并将账目信息返回给客户。1.3、数据字典(1) 数据结构名:货物别名: Goods描述:唯一的标识货物的信息集合数据项:货物=货物编号+客户号+货物名单价+数量数据项名:货物编号别名:Gno描述:每一件货物有唯一的编号,用来识别货物数据类型:char(10)数据项名:客户号别名:Cno描述:每位客户都有一个唯一的编号,用来识别区分客户身份数据类型:char(10)数据项名:货物名别名:Gna描述:对货物的日常称呼,用来辅助区分货物数据类型:char(20)数据项名:单价别名:Price描述:评估货物价值数据类型:int数据项名:数量别名:Num描述:货物存储在仓库中的数目(2)数据结构名:仓库别名: Depot描述:唯一的标识一个仓库的信息集合数据项:仓库=仓库号+仓库名+剩余容量+总容量数据项名:仓库号别名:Dno描述:每个仓库都有一个唯一编号,用来区分识别仓库数据类型:char(10)数据项名:仓库名别名:Dna描述:对仓库的日常称呼,用来辅助识别仓库数据类型:char(20)数据项名:剩余容量别名:SurplusCon描述:用来描述仓库剩余的存储容量数据类型:int数据项名:总容量别名:AllCap描述:描述仓库可以存储的货物总理数据类型; int(3)数据结构名:客户别名: Client描述:唯一的标识一个客户特征的信息集合数据项:客户=客户编号+客户名+地址+电话 +客户类型邮政编码客户备注数据项名:客户编号别名:ClientNo描述:用来唯一识别一个客户的编号数据类型:char(10)数据项名:客户名别名:ClientNa描述:对客户的日常称呼,用来辅助区分识别客户数据类型:int数据项名:地址别名:Address描述:客户的地址信息数据类型:char(20)数据项名:电话别名:Tel描述:客户的联系电话数据类型:long int数据项名:邮政编码别名:Mail描述:客户地区联系邮编数据类型:long int数据项名:客户类型别名:ClientType描述:对不同客户进行区分数据类型:char(10)数据项名:客户备注别名:ClientRemarks描述:描述客户的其他信息数据类型:char(100)(4)数据结构名:管理员别名: Adminstrator描述:唯一的标识一个职工特征的信息集合数据项:管理员=管理员编号+管理员名+登陆密码位置:存储在数据库数据项名:管理员编号别名:AdmintratorNo描述:对管理员描述的唯一编号数据类型:char(10)数据项名:管理员名别名:AdminstratorNa描述:管理员的姓名数据类型:char(10)数据项名:登陆密码别名:LoginCode描述:管理员登陆仓库管理系统的密码数据类型:long int(5)数据结构名:库存别名: StoreTable描述:仓库存储物资的情况数据项:库存表=仓库号+货物编号+总数量位置:存储在数据库数据类型:char(10)数据项名:总数量别名:TotalNo描述:描述货物的多少数据类型:int(6)数据结构名:入库单别名: EnterStoreTable描述:物资的入库信息数据项:入库表=货物编号+仓库号+入库时间+数量位置:存储在数据库数据项名:入库时间别名:EnterDate描述:对货物入库时间的描述数据类型:long int数据项名:入库数量别名:EnterNo描述:对进库货物数量的描述数据类型:long int(7)数据结构名:出库单别名: OutStoreTable描述:物资的出库信息数据项:出库表=货物编号+仓库号+出库时间+数量数据项名:出库时间别名:OutDate描述:对货物出库时间的描述数据类型:long int数据项名:出库数量别名:OutNo描述:对出库货物多少的描述数据类型:int第二章 概念结构设计2.1、E-R图的设计 仓库管理系统的主要功能是对入库的货物进行入库登记管理,对出库的货物进行出库登记管理,此外,还有对入库、出库记录的查询、对货物信息的维护、对出入库单位和人员信息进行维护等功能。因此,仓库管理系统主要涉及到货物、仓库管理员和仓库以及客户等几个实体,以及货物和仓库、仓库与仓库管理员、客户与货物之间的关系。画出总的E-R图如图2-1所示:图 2-1 仓库管理系统的E-R总图 第三章 逻辑结构设计3.1、关系模式根据E-R图,数据库仓库管理系统包含以下7个表:客户信息表“客户”、仓库信息表“仓库”、管理员信息表“管理员”、货物信息表“货物”、入库操作信息表“入库”、出库操作信息表“出库”和库存产品信息表“库存”;如下为关系模式已经完整性约束条件。货物(货物编号、货物名、客户号、单价、数量)货物编号为主码,客户号参照客户表中的客户号仓库(仓库号、仓库名、管理员编号、剩余容量、总容量)仓库号为主码,管理员编号参照管理员表中的管理员编号客户(客户号、客户名、客户类型、客户地址、联系电话、邮政编码、备注)客户号为主码库存(仓库号、货物号、入库单价、货物总数量)仓库号为主码,货物号参照货物表中的货物号入库(货物号、仓库号、客户号、入库单价、入库数量、入库时间)货物号、仓库号、客户号为主码,货物号、客户号分别参考货物和客户表中的货物号、客户号出库(货物号、仓库号、客户号、出库单价、出库数量、出库时间)货物号、仓库号、客户号为主码,仓库号、客户号分别参考参考仓库表客户表中的仓库号、客户号管理员(管理员编号、姓名、登录密码)管理员编号为主码第四章 系统功能设计4.1、功能需求分析4.1.1 系统管理 由管理员进入系统,对数据库系统进行管理,包括登陆、修改密码、修改信息、退出系统等操作。4.1.2 基本信息管理基本信息包括客户信息、仓库信息和管理员信息。客户可以分为供货商和购货商两种。在产品入库时,需要提供供应商的信息;在产品出库时,需要提供购货商的信息。基本信息管理模块可以实现以下功能:1 添加、修改、删除和查看客户信息;2 添加、修改、删除和查看仓库信息; 添加、修改、删除和查看操作员信息。4.1.3 货物信息管理货物信息管理模块可以实现以下功能: 添加货物信息; 修改货物信息; 删除货物信息; 4.1.4 仓库管理操作进行入库和出库操作。入库操作需要记录相关的产品信息、仓库信息、客户信息、入库时间等信息;出库操作需要记录相关的产品信息、仓库信息、客户信息、出库时间等信息。4.1.5仓库报警管理仓库警示管理模块可以实现仓库货物数量报警和仓库容量报警。4.1.6查询管理功能查询管理模块可以对仓库货物、客户和仓库进行各种类型的查询,从而能够全面的了解仓库情况。4.1.7收费管理功能收费管理功能模块,可以通过相应程序以某种标准计算出费用,打印出收费单,客户支付费用。4.2、系统功能模块图 系统功能模块图如下图4-1所示。 图 4-1 系统功能模块图4.3、建立存储过程/*插入客户表的存储过程*/create proc insertdataGoodsNo char(10),CilentNo char(10),Goodsna char(10),Price float DeptNo char(10) ,Dna char(10)SurplusContent float,AllCap float ,ClientNa char(10),CilententNo char(10),Address char(20),Tel numeric(12,0),Mail float ,ClientRemarks textasbegin insert into 客户(客户编号,客户名,地址 ,电话,客户备注) values(CilententNo,ClientNa,Address,Tel,ClientRemarks)endgo/*判断是否该出库(条件:现有库存-要求出库数量=0)*/create proc 判断是否该出库 商品编号 char(10), 要求出库数量 float(8) as if exists (select *from 仓库现有库存表 where 商品编号=商品编号)begin if exists(select*from 仓库现有库存表 where (现有库存-要求出库数量)=0)*/create proc 判断是否该入库 商品编号 char(10), 入库数量 float(8) as if exists (select *from 仓库表 where 仓库号=仓库号)begin if exists(select*from 仓库表 where (剩余容量-入库数量)0) rollback transactionraiserror(货物不能存入仓库,16,10)end4.4、建立触发器触发器的SQL语句:/*不准修改收费数额的存储过程*/create trigger 修改收费金额 on 出库单for update asif update(收费金额)beginrollback transactionraiserror(在未交清金额前不能修改收费金额,16,10)insert into modify_logvalues (current_user,getdate()select* from modify_logend/*为了预防时间不对称不准修改入库时间的存储过程*/create trigger 修改入库时间 on 入库单for update asif update(入库时间)beginrollback transactionraiserror(不能修改入库时间,16,10)insert into modify_logvalues (current_user,getdate()select* from modify_logend4.5、索引的建立先给出索引的相关定义,然后自己选择表或者属性建立索引(唯一索引、聚簇索引),写出相关的SQL语句。 CREATE UNIQUE INDEX 仓库索引 ON 仓库(仓库号) desc CREATE UNIQUE INDEX 货物索引 ON 货物(货物号) desc CREATE UNIQUE INDEX 管理员索引ON 管理员 (管理员编号) descCREATE UNIQUE INDEX 客户索引 ON 客户(客户号)desc4.6、表的建立-仓库表CREATE TABLE 仓库( 仓库号 char(10) not null primary key, 仓库名 char(10) not null, 剩余容量 float not null, 总容量 float not null, );-客户表CREATE TABLE 客户( 客户编号 char(10) not null primary key, 客户名 char(10) not null, 地址 char(20) not null, 电话 numeric(12,0) not null, 客户类型 char(10) not null, 客户备注 text , );-货物表CREATE TABLE 货物( 货物编号 char(10) not null , 货物名称 char(10) not null, 客户编号 char(10) not null constraint cilent_no foreign key references 客户(客户编号), 单价 float not null, primary key (货物编号 ) , );-管理员表CREATE TABLE 管理员( 管理员编号 char(10) not null primary key, 管理员名 char(10) not null, 仓库号 char(10) not null constraint depot_no foreign key references 仓库(仓库号), 登陆密码 char(10) not null, );-库存表CREATE TABLE 库存表( 仓库号 char(10) not null constraint depot_no1 foreign key references 仓库(仓库号), 货物编号 char(10) not null constraint goods_no1 foreign key references 货物(货物编号), );-入库表CREATE TABLE 入库单( 仓库号 char(10) not null constraint depot_no2 foreign key references 仓库(仓库号) , 货物编号 char(10) not null constraint goods_no2 foreign key references 货物(货物编号), 入库时间 char(10) not null, 入库数量 char(10) not null, primary key(仓库号 , 货物编号) , );-出库表CREATE TABLE 出库单( 仓库号 char(10) not null constraint depot_no3 foreign key references 仓库(仓库号), 货物编号 char(10) not null constraint goods_no3 foreign key references 货物(货物编号), 出库时间 char(10) not null, 出库数量 char(10) not null, primary key(仓库号 , 货物编号) , );drop TABLE 管理员 ;drop TABLE 库存表;drop TABLE 入库表;drop TABLE 出库表;drop TABLE 库存表;drop TABLE 客户;drop TABLE 货物 ;第五章 参考文献1. 王珊,陈红 数据库系统原理教程 清华大学出版社,1998.7。2王珊,萨师煊 数据库系统概论(第四版) 高等教育出版社,2006.5。3. 虞益诚,孙莉 SQL Server 2000 数据库应用技术 中国铁道出版社,2004.11。4. 袁方 采购与仓储管理 清华大学出版社 2004。6. 钱雪忠,陈国俊 数据库原理及应用实验指导(第二版) 北京邮电大学出版社 ,2010.7。后记通过为期两周的课程设计,我们应用所学的数据库顺利完成了仓库管理系统的设计。期间,我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论