《仓库管理系统》数据库设计文档格式.docx
《《仓库管理系统》数据库设计文档格式.docx》由会员分享,可在线阅读,更多相关《《仓库管理系统》数据库设计文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
![《仓库管理系统》数据库设计文档格式.docx](https://file1.bdocx.com/fileroot1/2022-10/11/87821478-3472-40b9-965f-2d0e66926c4c/87821478-3472-40b9-965f-2d0e66926c4c1.gif)
1.1编写目的
本文档主要是《仓库管理系统》的数据库设计,包括数据库相关的概要设计和详细设计以及其他相关内容,面向阅读群体为测试人员、开发人员等。
1.2背景
市面上虽然有众多各种各样的仓库管理系统,但是运行在移动端的却比较少,本仓库管理系统便是在这一条件下而进行开发的,简单易用,占用空间小,适用于搭载android系统的移动终端。
1.3参考资料
《疯狂Android讲义(第2版)》出版社:
电子工业出版社,第1版(2013年3月1日)
《数据库系统实现(第2版)》出版社:
机械工业出版社,第2版(2010年5月1日)
2数据库设计概要
所谓数据库设计是指从对现行非计算机管理的数据库系统的分析到最终实现由计算机管理的数据库系统的全过程。
它包括表、查询、报表等的设计。
总的原则应从提高数据处理效率及便于数据处理两方面考虑。
数据库是信息系统的核心和基础。
它把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。
数据库设计的步骤有需求分析,概念结构设计,逻辑结构设计。
2.1需求分析
2.1.1入库操作
入库功能实现可分为以下几个部分:
(1)定制入库单
由操作人员输入最基本的信息,从商品信息表中获取商品相关信息,从供应商信息表中获取供应商的相关信息。
(2)输入入库单对应的商品信息
入库商品与入库单自动关联,从商品信息表中获取商品的相关信息。
入库操作的数据流图如图2-1-1所示。
图2-1-1入库数据流图
2.1.2出库操作
出库功能实现可分为以下几个部分:
(1)定制出库单
由操作人员输入最基本的信息,从商品信息表中获取商品相关信息,从客户信息表中获取客户相关信息。
(2)输入出库单对应的商品信息
出库商品与出库单自动关联,从商品信息表中获取商品的相关信息。
处理流程如图2-2-2所示。
图2-2-2出库数据流图
2.2功能模块设计
系统功能模块结构图,如图2-2所示:
图2-2系统功能模块
该系统功能模块图列出了系统的主要功能模块。
包括基本信息管理,库存信息管理以及系统设置。
其中基本信息管理又包括供应商信息管理,顾客信息管理以及商品信息管理。
库存信息管理包括入库管理和出库管理。
系统设置包括管理用户,修改密码和退出三个功能。
其中供应商信息管理包括添加供应商信息、修改供应商信息、删除供应商信息、查询供应商信息四个子功能。
顾客信息管理包括添加顾客信息、修改顾客信息、删除顾客信息、查询顾客信息四个子功能。
商品信息管理包括添加商品信息、修改商品信息、删除商品信息三个子功能。
入库管理包括添加入库商品信息、修改入库商品信息、删除入库商品信息、查询入库商品信息四个子功能。
出库管理包括添加出库商品信息、修改出库商品信息、删除出库商品信息、查询出库商品信息四个子功能。
2.3数据字典
用户的需求具体体现在各种信息的提供、保存、更新和查询。
这就要求数据加结构能够充分地满足各种信息的输入和输出。
收集基本数据、数据结构和数据处理流程,组成一份详细的数据字典,为下一步的具体设计做好充分的准备。
名字:
客户信息
描述:
仓库货物客户的基本信息
定义:
客户信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页
名字:
供应商信息
描述:
仓库货物供应商的基本信息
供应商信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页
商品属性信息
商品各项属性的相关信息
商品属性信息=单位+类别
商品信息
商品的各项信息
商品信息=名称+规格
入库单信息
入库单的各项信息
入库单信息=入库单号+供应商+制单人+入库时间+库管员+经办人+是否入库+数量+仓库
入库单商品信息
与入库单对应的商品信息
入库单信息=供货商公司名称+联系人姓名+联系电话+商品名称+商品规格+计量单位+单价+数量+进货日期
出库单信息
出库单的各项信息
出库单信息=顾客公司名称+联系人姓名+联系电话+商品名称+商品规格+计量单位+单价+数量+进货日期
3数据库的详细设计
3.1数据库概念设计
概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
(1)供应商实体属性图,如图2-4-1
(1)
图2-4-1供应商实体属性图
(2)顾客实体属性图,如图2-4-2
图2-4-2顾客实体属性图
顾客信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页
(3)商品实体属性图,如图2-4-3
图2-4-3商品实体属性图
(4)实体关系图(E-R),如图2-4-4
图2-4-4实体关系图
(5)完整的实体联系图,如图2-4-5
图2-4-5包括三个实体,即供应商实体、顾客实体和商品实体。
其中供应商和商品通过入库操作联系起来。
他们之间的关系是多对多的关系。
即一件商品可以由多个供应商供应,一个供应商也可以由多种商品。
入库操作有一个属性即入库单,它记录着入库操作的一些基本信息如供应商名称、入库商品的名称等等。
商品和顾客通过出库操作联系起来。
同样他们之间也是多对多的关系。
即一个顾客可以购买多种商品,一种商品也可以提供给多个顾客。
出库操作的属性是出库单,它记录着顾客名称、出库商品的名称等等一些出库操作的基本信息。
图2-4-5完整的实体联系图
3.2数据库逻辑设计
概念结构是独立于任何一种数据模型的信息结构。
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。
现在需要将上面的数据库概念结构转化为SQLite数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
仓库管理系统数据库中的各个表格的设计结果如下面的表格所示。
每个表格表示数据库中的一个表。
表3-2-1为供应商信息表:
表3-2-1供应商信息表
列名
数据类型
可否为空
说明
CompanyName
Varchar
NOTNULL
公司名称
ContactName
NULL
联系人姓名
Address
联系地址
City
所在城市
Region
所在地区
PostalCode
邮政编码
Phone
电话号码
Fax
传真号码
Homepage
公司主页
SupplierMemo
Text
备注信息
表3-2-1供应商信息表共包括10个列名,即为供应商实体的基本属性。
其中供应商编号CompanyName为候选码(Candidatekey),根据实体完整性规则,它不能为空且唯一标识一个供应商元组。
由于只有一个候选码,故CompanyName为主码(Primarykey)。
由于选择了公司名称CompanyName为主码,则不允许公司重名。
其它九个属性为非码属性,是可以为空的。
表3-2-2为顾客信息表:
表3-2-2顾客信息表
表中共包含10个列名,即为顾客实体的基本属性。
其中CompanyName(顾客公司名)为候选码,它不能为空且它们唯一标识一个顾客信息元组。
由于只有一个候选码,CompanyName即为主码。
由于选择了公司名称CompanyName为候选码,则不允许公司重名。
表3-2-3为商品信息表:
表3-2-3商品信息表
ProductName
商品名称
Spec
商品规格
Unit
商品单位
Productmemo
商品信息共包括4个列名,分为对应商品名称、商品规格、商品单位和备注信息。
其中ProductName(商品名称)为候选码,它唯一标识一个商品信息元组,不能够为空。
由于只有一个候选码ProductName即为主码。
由于ProductName为候选码,商品不能够重名。
其它三个属性为非码属性,可以为空。
表3-2-4为入库信息表:
表3-2-4进货信息表
ProviderName
供应商姓名
Quantity
Float
商品数量
UnitPrice
Money
商品单价
OrderDate
Datatime
进货日期
Ordermemo
表中共包括8个表项,分别表示供应商名称,商品名称,商品规格,商品单位,备注信息,商品单价,进货日期,商品数量。
其中ProductName(商品名称)为主码。
不能够为空。
其它7项为非码属性,可以为空。
表3-2-5为出库信息表:
表3-2-5出库信息表
CustomerName
顾客姓名
表中共包括