收藏 分销(赏)

数据库课程设计--库存管理系统.doc

上传人:人****来 文档编号:3996015 上传时间:2024-07-24 格式:DOC 页数:13 大小:133.04KB 下载积分:8 金币
下载 相关 举报
数据库课程设计--库存管理系统.doc_第1页
第1页 / 共13页
数据库课程设计--库存管理系统.doc_第2页
第2页 / 共13页


点击查看更多>>
资源描述
成绩:__________ 《数据库原理及应用》 课程设计 课题 库存管理系统 班级 计算机2091班 组长 杨阳(28) 组员 杨阳 2011 年 12 月 8日—2011 年12月 22日 库存管理系统说明书 1 绪论 库存管理系统可以全面管理仓库中存储的商品和货物,缩短了库存信息流转时间,使企业的物料管理层次分明、井然有序、为采购、销售、和生产提供依据,从而提高企业的经营效率。 2 需求说明 系统开发的总体任务是实现全面管理仓库中存储的商品和货物,缩短了库存信息流转时间,使企业的物料管理层次分明、井然有序、为采购、销售、和生产提供依据,从而提高企业的经营效率。 系统功能模块图 库存管理系统需要完成的功能主要有: (1)基本信息管理 本信息包括客户信息、仓库信息、和用户信息。客户可以分为供应商和购货商两种类型。在产品入库时,需要提供供应商的信息;在产品出库和退货时,需要提供购货商的信息.仓库信息包括仓库编号、仓库名和仓库说明等信息。用户信息包括用户名、密码、员工姓名等信息。基本信息管理模块可以实现以下功能: 添加、修改、删除和查看客户信息;添加、修改、删除和查看仓库信息;添加、修改、删除和查看用户信息; (2)产品信息管理功能模块可以实现以下功能: 添加产品类别、修改产品类别、删除产品类别、查看产品类别、添加产品信息、修改产品信息、删除产品信息、查询产品信息。 (3)库存操作管理 库存操作是由仓库管理员执行,就是把产品放入仓库或把产品从仓库中取出的操作,用专业术语来描述就是入库和出库.库存操作管理模块可以实现入库管理、出库管理和库存管理等功能;入库可以分为采购入库、生产入库、退货入库、退料入库等情况。采购入库指将从供应商处采购的产品入库;生产入库是指将企 业自己生产的产品入库;退货入库是售出的产品退货后,将退货产品入库;退料入库是指用于本企业生产的原材料出库后没有完全使用,退回仓库。入库操作需要记录相关的产品信息、仓库信息、客户信息、经办人、涉及金额和入库时间等信息。出库可以分为销售出库、退货出库、用料出库等情况.销售出库是指把卖给购货商的产品出库;退货出库是指将本企业用于生产的原材料从仓库中提取到生产线.出库操作需要记录相关的产品信息、仓库信息、客户信息、经办人、涉及金额和出库时间等信息。库存盘点是指对库存产品进行整理,纠正不准确的库存数据.由于人为操作等原因,系统中的库存数据与实际数据之间可能会存在误差。所以每隔一段时间就需要对库存进行盘点,从而保证库存数据的准确性. (4)库存警示管理 库存警示是指对库存中接近或超过临界值的产品进行报警.在产品信息中,包括产品的合理数量范围和有效期限。产品数量小于合理数量的下限称为短线;产品数量大于合理数量的上限称为超储.产品出现短线、超储、接近或超过有效期限时都需报警。库存警示管理模块可以实现以下功能:库存产品数量报警;库存产品失效报警。 (5)统计查询管理功能 统计查询管理模块可以对库存产品进行各个类型的统计和查询,从而使用户能够全面的了解库存情况。库存出入库统计报表;库存产品流水线统计报表。对上述各功能进行集中、模块划分,得到系统功能模块图,如图2—1。 系统流程分析 系统流程就是用户在使用系统时的工作过程.系统的工作流程都是从用户登录模块开始,对用户身份进行权限验证,进而对于系统进行管理的.本系统的流程分析图如下: 库存管理系统 库存操作管理 用户信息管理 基 本信息 管理 仓库信息管理 产品信息管理 产品类别管理 客户信息管理 产品信息管理 库存产品统计表 入库操作管理 出库操作管理 库存盘点管理 数量报警管理 失效报警管理 产品出库统计表 库存警示管理 统计查询管理 图2-1 系统功能模块图 用户登陆 开始 失败超过3次 读取用户类型 退出程序 1、 管理自己的用户信息 2、 管理普通的用户信息 管理自己的用户信息 基本信息管理 产品信息管理 库存操作管理 库存警示管理 统计查询管理 重试 失败 是 成功 Admin用户 普通用户 用户管理模块 企业库存管理模块 3概念模型设计 从上面的信息中规定出的实体有客户实体、仓库实体、产品实体、库存产品实体、产品出库实体、产品入库实体等.由于此库存管理系统中以上的实体都是存在着三元关系,故客户、仓库、产品之间存在的三元关系的E-R下面的图1所示;仓库、产品、库存产品之间存在的三元关系的E—R下面的图2所示;客户、仓库、产品出库之间存在的三元关系的E-R下面的图3所示;客户、仓库、产品入库之间存在的三元关系的E—R下面的图3所示: 客户 产品 仓库 管理 客户名称 客户编号 通信地址 联系人 客户类型 联系电话 仓库说明 仓库编号 仓库名称 产品编号 产品名称 产品类型编号 产品规格 计量单位 有效期 参考价格 M N P 图3-1 仓库 产品 仓库编号 仓库名称 仓库说明 产品名称 产品编号 产品类型编号 计量单位 产品规格 参考价格 存储 库存产品 产品入库单价 产品数量 产品存储编号 生产日期 M N P 图3—2 客户 产品出库 仓库 管理 客户名称 客户编号 通信地址 联系人 客户类型 联系电话 仓库说明 仓库编号 仓库名称 出库产品编号 经办人 出库操作类型 出库日期 出库产品数量 M N P 图3—3 客户 产品出库 仓库 管理 客户名称 客户编号 通信地址 联系人 客户类型 联系电话 仓库说明 仓库编号 仓库名称 入库产品编号 经办人 入库操作类型 入库日期 入库产品数量 M N P 入库产品单价 生产日期 图3—4 4 逻辑设计 用户的需求具体体现在各种信息的提供、保存、修改、查询等方面,经调查和分析,针对一般库存管理系统的需求和对系统流程图的分析,设计成如下的逻辑结构。 (1)客户信息表Client 客户信息表Client用来保存客户信息。表Client的结构如表所示: 编号 字段名称 数据结构 说明 1 Cid int 客户编号 2 Cname varchar(50) 客户名称 3 Ctype tinyint 客户类型 4 Contact varchar(30) 联系人 5 Adderss varchar(50) 通信地址 6 Postcode varchar(10) 邮政编码 7 Phone varchar(30) 联系电话 8 Fax varchar(30) 传真电话 9 Memo varchar(100) 备注信息 (2)仓库信息表Storehouse 编号 字段名称 数据结构 说明 1 Sid int 仓库编号 2 Sname varchar(50) 仓库名称 3 Memo varchar(100) 仓库说明 (3)用户信息表Users 编号 字段名称 数据结构 说明 1 UserName varchar(40) 用户名 2 Pwd varchar(40) 密码 3 User_type tinyint 用户类型 (4)产品类别表ProType 产品类别表ProType用来保存产品类别信息,表ProType的结构如图所示: 编号 字段名称 数据结构 说明 1 TypeId int 产品类别编号 2 TypeName varchar(50) 产品类别名称 3 UpperId int 上级产品类别 (5)产品信息表Product 产品信息表Product用来保存产品的基本信息.表Product的结构如图所示: 编号 字段名称 数据结构 说明 1 Pid int 产品编号 2 Pname varchar(50) 产品名称 3 TypeId int 产品类型编号 4 Ptyle varchar(50) 产品规格 5 Punit varchar(10) 计量单位 6 Pprice Decimal(15,2) 参考价格 7 Plow int 产品数量下限 8 Phigh int 产品数量上限 9 Valid Int 有效期(以天为单位) 10 AlarmDays int 在到达有效期前几天发出警告 (6)入库操作信息表StoreIn 入库操作信息表StoreIn用来保存入库操作的基本信息.表StoreIn的结构如表所示: 编号 字段名称 数据结构 说明 1 SidType Varchar(20) 入库操作类型 2 Pid int 入库产品编号 3 MakeDate Char(10) 生产日期 4 Pprice Decimal(15,2) 入库产品单位 5 Pnum int 入库产品数量 6 Cid int 客户编号 7 Sid int 仓库编号 8 EmpName varchar(50) 经办人 9 OptDate Char(10) 入库日期 (7)出库操作信息表TakeOut 出库操作信息表TakeOut用来保存出库操作的基本信息.表TakeOut的结构如图所示: 编号 字段名称 数据结构 说明 1 Ttype Varchar(20) 出库操作类型 2 Pid int 出库产品编号 3 Pprice Decimal(15,2) 出库产品单位 4 Pnum int 出库产品数量 5 Cid int 客户编号 6 Sid int 仓库编号 7 EmpName varchar(50) 经办人 8 OptDate Char(10) 出库日期 (8)库存产品信息表ProInStore 库存产品信息表ProInStore用来保存库存产品的基本信息如图所示: 编号 字段名称 数据结构 说明 1 SpId int 产品存储编号 2 Pid int 产品编号 3 Pprice Decimal(15,2) 产品入库单价 7 Pnum int 产品数量 8 MakeDate char(10) 生产日期 9 Sid int 仓库编号 5 物理设计 1.为了提高在表中搜索元组的速度,在实际实现的时候应该基于键码建立索引是各表中建立索引的表项: (1)Client(Cid) (2)Product(Pid) (3)Storehouse(Sid) (4)ProInStore(SpId) (5)ProType(TypeId) (6)Users(UserName) (7)StoreIn(Cid,Pid,Sid) (8)TakeOut(Cid,Pid,Sid) 2。用SQL实现设计 实现该设计的环境为Windows 2000 SQLServer 2000. (1)创建数据库 create database Store go (2)创建客户信息表 Client create table Client ( Cid int primary key CLUSTERED, Cname varchar(50) not null, Ctype tinyint, Contact varchar(30), Address varchar(50), Postcode varchar(10), Phone varchar(30), Fax varchar(30), Memo varchar(100) ) Go (3)创建仓库信息表Storehous create table Storehouse ( Sid int primary key CLUSTERED, Sname varchar(50) not null, Memo varchar(100) ) Go (4)创建用户信息表Users create table Users ( UserName varchar(40) primary key CLUSTERED, Pwd varchar(40) not null, User_Type tinyint not null ) Go (5)创建产品类别表ProType create table ProType ( TypeId int primary key CLUSTERED, TypeName varchar(50) not null, UpperId int ) Go (6)创建产品信息表Product create table Product ( Pid int primary key CLUSTERED, Pname varchar(50) not null, TypeId int, Pstyle varchar(50), Punit varchar(10), Pprice decimal(15,2), Plow int, Phigh int, Valid int, AlarmDays int ) Go (7)创建入库操作信息表StoreIn create table StoreIn ( SiType varchar(20), Pid int, MakeDate char(10), Pprice decimal(15,2), Pnum int, Cid int, Sid int, EmpName varchar(50), OptDate char(10), CONSTRAINT PK_STOREIN PRIMARY KEY ClUSTERED(Cid,Pid,Sid), CONSTRAINT FK_STOREIN_CLIENT FOREIGN KEY(Cid) REFERENCES Client(Cid), CONSTRAINT FK_STOREIN_PRODUCT FOREIGN KEY(Pid) REFERENCES Product(Pid), CONSTRAINT FK_STOREIN_STORE FOREIGN KEY(Sid) REFERENCES Storehouse(Sid)) Go (8)创建出库操作信息表TakeOut create table TakeOut ( Ttype varchar(20) not null, Pid int, Pprice decimal(15,2), Pnum int, Cid int, Sid int, EmpName varchar(50), OptDate char(20), CONSTRAINT PK_TAKEOUOT PRIMARY KEY ClUSTERED(Cid,Pid,Sid), CONSTRAINT FK_TAKEOUT_CLIENT FOREIGN KEY(Cid) REFERENCES Client(Cid), CONSTRAINT FK_TAKEOUT_PRODUCT FOREIGN KEY(Pid) REFERENCES Product(Pid), CONSTRAINT FK_TAKEOUT_STORE FOREIGN KEY(Sid) REFERENCES Storehouse(Sid)) (9)创建库存产品信息表ProInStore create table ProInStore ( SpId int primary key CLUSTERED, Pid int not null, Pprice decimal(15,2), Pnum int, MakeDate char(10), Sid int ) Go (10)创建存储过程实现插入、删除、更新 //存储过程实现客户信息表 Client的信息插入 CREATE proc Client_insert @Cname varchar(50), @Ctype tinyint, @Contact varchar(30), @Address varchar(50), @Postcode varchar(10), @Phone varchar(30), @Fax varchar(30), @Memo varchar(100) as insert into Client values(@Cname,@Ctype,@Contact,@Address,@Postcode,@Phone,@Fax,@Memo) GO //存储过程实现客户信息表 Client的信息删除 create proc Client_Delete @Cname varchar(50), as delete from Client where Cname=@Cname Go //存储过程实现客户信息表 Client的信息修改 create proc Client_Update @Cname varchar(50), @Contact varchar(30), as update Client set Cname=@Cname where Contact=@Contact go //存储过程实现用户信息表Users的信息插入 CREATE proc Users_insert @UserName varchar(40), @Pwd varchar(40), @User_Type tinyint as insert into Users values(@UserName,@Pwd,@User_Type) GO //存储过程实现用户信息表Users的信息删除 create proc Users_Delete @UserName varchar(40), as delete from Users where UserName=@UserName Go //存储过程实现用户信息表Users的信息修改 create proc Users_Update @UserName varchar(40), @Pwd varchar(40), as update Users set UserName=@UserName where Pwd=@Pwd go 6 实验数据示例 对用户的操作 (1)注册(register) INSERT INTO Users( UserName, Pwd,User_Type) VALUES(’A’,888888,1); select * from Users 在登记操作后,用户得到一个唯一的UserName,可以根据这个 UserName来查询和修改大部分的数据。 (2)注销(unregister) DELETE Users WHERE(UserName='A'); (3)修改个人信息(update) UPDATE Users Set(UserName=B,Pwd=1,User_Type =1) WHERE(UserName=A); (4)插入信息(ProType) Insert into ProType values(23,'产品’,’农副产品’) (5)·查询信息(ProType) Select * from ProType 7总结 通过本次设计我学习了如何使用SQL Server2000和VC++来创建数据库.此库存管理系统缩短了库存信息流转时间,使企业的物料管理层次分明、井然有序、为采购、销售、和生产提供依据,从而提高企业的经营效率,适用于各大型商场和一些较大的物品管理企业。 参考文献 [1] 温贤发.Visual C++6。0数据库程序设计.北京:科学出版社,2004 [2] 董传银.Visual C++6。0数据库编程技术.北京:希望电子出版社,2004 [3] 启明工作室.Visual C++ +SQL Server数据库系统开发与实例.北京:人民邮电出版社,2004 13
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

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

关于我们      便捷服务       自信AI       AI导航        抽奖活动

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

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

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

关注我们 :微信公众号    抖音    微博    LOFTER 

客服