资源描述
课程设计说明书 NO.1
仓库管理系统设计
1.课程设计的目的
本需求的编写目的在于研究仓库管理系统软件的开发途径和应用方法。
本需求的预期读者是与仓库管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。
通过本系统软件,能帮助工作人员利用计算机,快速方便的对仓库的货物进行管理、输入、输出、查找等操作,将货物的管理具体化、直观化、合理化。
2. 设计方案论证
2.1 设计思路(需求分析)
由于货物的种类数量的纷繁复杂,比较难管理,给工作人员的工作带来诸多不便.此系统的开发就是专门解决工作人员在这些烦琐的问题。此系统适用于仓库,它是比较完善的系统管理软件。此系统的采用方便了仓库管理人员对仓库的管理,对管理人员的工作起到重要作用。通过本系统软件,能帮助工作人员利用计算机,快速方便的对仓库的货物进行管理、输入、输出、查找等操作,将货物的管理具体化、直观化、合理化。
通过该系统所记录的数据,可以使仓库管理者对货物的进出情况管理的更清楚,使仓库管理系统更完善,。减轻工作人员的工作负担,使工作简化,从而对货物进行更井井有条的管理。
该系统应具备内部管理和外部管理两大基本模块,其具体功能如下表所示:
表2.1 管理模块功能表
功能模块
用户
外部模块
内部模块
操作员和系统管理员
通过应用界面,应用程序,查询等。
同过SQL语言,对数据库的查询、插入、修改、删除等操作。
该系统的总体功能框图如下所示:
沈 阳 大 学
课程设计说明书 NO.2
仓库管理系统
货物出货情况
货物进货情况
用户管理
图2.1 仓库管理系统总体结构框图
2.2 概念结构设计
2.2.1 关系模型
供应商表(编号,公司名称,联系人,地址,电话)主码为编号,符合三范式
货物表(编号,名称,规格,型号,数量,标准价格,货物重量,销售价格)主码为编码,符合三范式
客户表(编号,名称,联系人,地址,电话,手机,)主码为编号,符合三范式
仓库表(编号,名称,面积,类型,管理员,地址,电话,用户号)主码为编码,符合三范式
用户表(编号,姓名,职位,权限,用户名,密码)主码为编码,符合三范式
供应表(货物号,供应商号)主码为货物号,供应商号,符合三范式
取货表(客户号,仓库号)主码为客户号,仓库号,符合三范式
储存标(货物号,仓库号)主码为货物号,仓库号,符合三范式
2.2.2 系统E-R图
(1) 实体及其属性
沈 阳 大 学
课程设计说明书 NO.3
图2.2 货物实体E-R图
图2.3 仓库实体E-R图
图2.4 供应商实体E-R图
沈 阳 大 学
课程设计说明书 NO.4
图2.5 客户实体E-R图
图2.6 用户实体E-R图
(2) 总体系统E-R图
沈 阳 大 学
课程设计说明书 NO.5
图2.7 总体系统结构E-R图
沈 阳 大 学
课程设计说明书 NO.6
2.3 逻辑设计文档
2.3.1 表的建立
表2.2 供应商表(supply)
列名
含义
长度
类型
NULL
DEFAULT
SID
编号
8
Int
No
No
Sname
公司名称
20
Char()
No
No
Scon
联系人
6
Char()
No
No
Sdr
地址
30
Char()
No
No
Stele
电话
15
int
No
No
表2.3 货物表(goods)
列名
含义
长度
类型
NULL
DEFAULT
GID
货物编号
8
int
No
No
Gname
名称
20
Char()
No
No
Gsta
规格
8
Char()
No
No
Gtype
型号
8
Char()
No
No
Gqty
数量
8
int
No
No
GSP
销售价格
8
int
No
No
GDP
标准价格
8
int
Yes
No
表2.4 客户表(costom)
列名
含义
长度
类型
NULL
DEFAULT
CID
编号
8
int
No
No
Cname
名称
8
Char()
No
No
Ccon
联系人
6
Char()
No
No
Cdr
地址
20
Char()
No
No
Ctele
电话
15
int
No
No
Chand
手机
15
int
Yes
No
表2.5用户表(users)
列名
含义
长度
类型
NULL
DEFAULT
UID
编号
8
Int
No
No
Uname
姓名
8
Char()
No
No
Upos
职位
10
Char()
yes
No
Ula
权限
8
Char()
No
No
Usub
用户名
15
Char()
No
No
Ukey
密码
15
int
No
No
沈 阳 大 学
课程设计说明书 NO.7
表2.6 仓库表(warehouse)
列名
含义
长度
类型
NULL
DEFAULT
WID
编号
8
int
No
No
Wname
名称
20
Char()
No
No
Wsq
面积
6
int
Yes
No
Wtype
类型
8
Char()
No
No
Wad
管理员
6
Char()
No
No
Wdr
地址
20
Char()
No
No
Wtele
电话
15
Int
No
No
UID
编号
8
Int
No
No
表2.7 供应表(accommdate)
列名
含义
长度
类型
NULL
DEFAULT
GID
货物编号
8
int
No
No
SID
编号
8
Int
No
No
表2.8 取货表
列名
含义
长度
类型
NULL
DEFAULT
WID
编号
8
int
No
No
CID
编号
8
int
No
No
表2.9 储存表
列名
含义
长度
类型
NULL
DEFAULT
GID
货物编号
8
int
No
No
WID
编号
8
int
No
No
2.4 物理设计文档
(一) 数据库及基本表
1建立进库系统
Create database ingoods
(1) 建立供应商表
use [ingoods]
go
沈 阳 大 学
课程设计说明书 NO.8
create table supply(
SID int primary key not null,
Sname char(20) not null,
Scon char(6)not null,
Semail char(20),
Sp int not null,
Sdr char(30),
Stele int)
(2) 建立货物表
use [ingoods]
go
create table goods(
GID int primary key not null,
Gname char(20)not null,
Gsta char(8)not null,
Gtype char(8)not null,
Gpty int not null,
GSP int not null,
GDP int ,
Gwei int not null)
2建立出库系统
Create database outgoods
(1) 建立客户表
沈 阳 大 学
课程设计说明书 NO.9
use [outgoods]
go
create table costom(
CID int primary key not null,
Ccre char(6),
Ccon char(6) not null,
Cdr char(20)not null,
Ctele int not null,
Chand int not null,
COD char(15),
Ccard int not null,
Ccom char(20) not null,
Cemail char (20))
3建立货物转移系统
Create database chansfergoods
(1)建立仓库表
use [chansfergoods]
go
create table warehouse(
WID int primary key not null,
Wname char(20)not null,
Wsq int ,
Wtype char(8)not null,
Wad char(6)not null,
沈 阳 大 学
课程设计说明书 NO.10
Wdr char(20)not null,
Wpty int,
Wtele int not null)
4建立用户系统
Create database costom
(1)建立用户表
use [costom]
go
create table users(
UID int primary key not null,
Uname char(8)not null,
Upos char(10)not null,
Ula char(8)not null,
Usub char(15)not null,
Ukey int not null)
(二)视图
1在货物表中对货物价格为5000的货物建立视图
create view id_goods(id_GID,Gname,Gsta,Gtype,Gpty,GSP,GDP,Gwei)
as
select *
from goods
where GSP='5000'
2在供应商表中对邮编为一12开头的供应商建立视图
沈 阳 大 学
课程设计说明书 NO.11
create view id_supply(id_SID,Sname,Scon,Semail,Sp,Sdr,Stele)
as
select *
from supply
where Sp='12____'
(三)索引
1 为warehouse表按编号升序建立唯一索引
create unique index warwid on warehouse(WID ASC)
2 在warehouse表中按电话的降序建立唯一索引
create unique index wartele on warehouse(Wtele desc)
3. 设计结果及分析
图2.8 建立各管理子数据库系统过程图
沈 阳 大 学
课程设计说明书 NO.12
图2.9 建立各管理子数据库系统结果图
图2.10 建立表过程图
沈 阳 大 学
课程设计说明书 NO.13
图2.11 货物信息表属性图
图2.12 供应商信息表属性图
沈 阳 大 学
课程设计说明书 NO.14
图2.13 客户信息表属性图
图2.14 仓库信息表属性图
沈 阳 大 学
课程设计说明书 NO.15
图2.15 客户信息表属性图
图2.16 建立视图过程图
沈 阳 大 学
课程设计说明书 NO.16
图2.17 建立视图结果图
图2.18 建立索引结果图
沈 阳 大 学
课程设计说明书 NO.17
图2.19 仓库信息表索引属性图
4.设计体会
在这次数据库课程设计中,我花了3周的时间做需求分析和数据库设计,只用了不到一周的时间编写程序。开始时真的不知道该怎么做,仓库管理系统到底要创建哪些表,表里到底要有哪些数据项,这些都很模糊。于是就找别人的设计作参考,按着设计要求一步一步的设计。需求分析真的很重要,也不容易,比编程还难。在需求设计阶段,把系统的功能勾画出来,分析系统的数据字典、数据流向,画出E-R图,根据E-R图数据库设计关系模型,这样一步步下来,自己对仓库管理系统有更多的了解,对后面的程序编程也明朗了。在数据库设计的时候也花了不少的时间,多次的在数据库关系模型、E-R
沈 阳 大 学
课程设计说明书 NO.18
图和数据字典之间循环修改,重复的修改完整性定义,优化表格。在定义check完整时发现SQL的check完整性定义失效,翻书发现原来SQL对check的完整性定义还没有强化。等数据关系模型最终确定了,才开始设计索引和触发子。之后的编程就简单多了。在数据库设计期间,我是在设计的过程中就去创建数据库,建表,所以当修改完整性定义和数据项时现得相当麻烦,因为有主键外键的完整性定义在修改时就不好做了。最终结论,我该把数据库设计完后才去创建数据库创建完整性定义等等,还有一点是创建表时最好也把后面程序功能的需要考虑进来。在这次数据库课程设计中真的学到不少。
沈 阳 大 学
课程设计说明书 NO.19
参考文献
[1] 王珊,萨师瑄. 数据库系统概论[M]. 第四版. 高等教育出版社, 2006.5:198-234.
[2] 陈世红,王晓海等. SQL Server2000管理、开发与应用实例详解 [M]. 北京: 人民邮电出版社, 2006:233-246.
[3] 孔令慧,陈涵. SQL Server数据库应用及程序开发[M]. 北京: 化学工业出版社, 2007:267-289.
沈 阳 大 学
课程设计说明书 NO.20
沈 阳 大 学
展开阅读全文