仓库数据库设计.docx
《仓库数据库设计.docx》由会员分享,可在线阅读,更多相关《仓库数据库设计.docx(7页珍藏版)》请在冰豆网上搜索。
仓库数据库设计
仓库管理系统数据库设计
姓名:
XXX
学号:
XXXXXXXX
班级:
XXXX学院:
XXXX
日期:
2017.6.21
仓库管理系统数据库设计
需求分析
1.1设计背景
随着经济的飞速发展,仓库管理变成了各大公司日益重要的内容。
仓库管理过程的准确性和高效性至关重要。
影响着公司的经济发展和管理。
利用人工管理强大而数据烦琐的数据库显的效率过于低。
利用计算机高效、准确的特点能够很好的满足公司的管理需要。
提高公司各个员工的工作效率和公司的运做效率。
利用计算机对仓库数据信息进行管理具有着手工管理所无法比拟的优点目前一个现代化的仓库管理系统已经成为仓库管理不可缺少的管理手段。
1.2主要功能
它包括了仓库信息、货物信息、货主信息、提货人信息、入库信息、出库信息等内容。
在操作上,它集输入、查询、统计和各种处理为一体,信息导入导出可实现信息备份,灵活、专业的报表设计,形象、增强的数据处理,完美的信息图形分析,用户可自定义自开发等功能。
1.3数据项及数据结构
通过对仓库管理工作过程的内容和数据流图分析,设计如下面的数据项和数据结构。
注:
单下划线表示主码,双下划线表示外码。
1.仓库信息(仓库号,仓库容量,货物号)
2.货物信息(货物号,名称,数量)
3.货主信息(货主编号,货主姓名,货主电话)
4.取货人信息(取货人编号,取货人姓名,取货人电话,取货人地址)
5.入库信息(货物号,仓库号,货主编号,入库时间,入库价格,入库数量)
6.出库信息(货物号,仓库号,取货人编号,岀库数量,出库价格,出库时间)
概念结构设计
根据上面设计规划岀的实体,我们对各个实体具体的描述E-R图如下:
仓库
2.1仓库实体E-R图
货物
货物号名称数量
2.2货物实体E-R图
货主
货主编号货主姓名货主电话
2.3货主实体E-R图
取货人信息取货人地址
2.4取货人实体E-R图
入库信息
2.5入库信息实体E-R图
出库信息
2.6出库信息实体E-R图
nm
J提供货物n
nm
取货
E入库
取货人
出库
管理员
m“b
n
m
n
管理
仓库
2.7完整实体E-R图
三、逻辑结构设计
E-R图向关系模型的转换
关系模型的逻辑结构是一组关系模式的集合。
E-R图则是由实体,实体的属性和实体间
的联系三个要素组成。
所以将E-R图转换为关系模型实际上就是要将实体.实体的属性和实
体间的联系转换为关系模式。
转换原则如下。
1.实体类型的转换:
一个实体型转换成一个关系模式。
实体的属性就是关系的属性,实体的码就是关系的
码。
2.联系类型的转换,根据不同的情况做不同的处理。
(D-个1的联系可以转换为一个独立的关系模式.也可以与任意一端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。
如果与某一端实体对应的关系模式合并.则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
(2)-个1「N的联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合
并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。
(3)—个M:
N联系转换为一个关系模式。
与该联系相连的各实体的码为各实体码的组合。
(4)三个或三个以上实体间的一个多元联系可以转换为一个关系模式。
与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
(5)具有相同码的关系模式可合并。
3.1.货主信息表
3.2.货物信息表
3.3.仓库信息表
34取货人信息表
四、数据库实施
根据以上的逻辑分析所得到表的关系,我们使用T-SQL语言设计得到数据库和数据表
4.2基本表的创建,建表语句
1.createdatabaseWareHouse;
useWareHouse;
2.createtableHuoZhu(
HZnumberchar(10)primarykey,
HZnamechar(50)notnull,
phone_numberchar(16));
3.createtableHuoWu(HWnumberchar(10)primarykey,HWnamechar(50)notnull,countschar(50)notnull);
4.createtableTiHuo(THnumberchar(10)primarykey,THnamechar(50)notnull,THphonechar(lO),addresschar(50)
);
5.createtableCangKu(CKnumberchar(10)primarykey,HWnumberchar(lO),sizein匸constraintCK_HW_nforeignkey(HWnumber)HuoWu(HWnumber)
references
6.createtableln_WH(HWnumberchar(10)notnull,
CKnumberchar(lO),
THnumberchar(10)notnull,
ln_timechar(30)notnull,
Inpricechar(8)notnull,
Incountintnotnull,
constraintln_HW_nforeignkey(HWnumber)referencesHuoWu(HWnumber),
constraintln_CK_nforeignkey(CKnumber)references
CangKu(CKnumber),
constraintln_TH_nforeignkey(THnumber)referencesTiHuo(THnumber)
);
7.createtableOut_WH(HWnumberchar(10)notnull,
CKnumberchar(lO),
THnumberchar(10)notnull,
Out_timechar(20)notnull,
Outpricechar(8)notnull,
Outcountintnotnull,
constraintOut_HW_nforeignkey(HWnumber)referencesHuoWu(HWniimber),constraintOut_CK_nforeignkey(CKnumber)referencesCangKu(CKnumber),
constraintOut_TH_nforeignkey(THnumber)referencesTiHuo(THnumber)