数据库课程设计仓库管理子系统Word文档格式.docx
《数据库课程设计仓库管理子系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计仓库管理子系统Word文档格式.docx(22页珍藏版)》请在冰点文库上搜索。
(1)用计算机最大限度地支持仓储管理信息的处理,以充分发挥人——机协同的功效,促进企业做好仓储工作。
(2)做好仓库入库、出库等基本信息的收集,保存和加工工作,为其它系统的相关处理提供准确而又有力的库存数据支持。
(3)对商品存储位置,通过计算机规划,做好定位管理。
(4)库存管理可以加快商品流通,缩短商品周转周期,降低库存占用资金,加速资金流转。
(5)利用库存管理,促使仓库做好库存商品清点工作,使系统反映的帐面库存数据与实物库存量能基本保持一致。
2系统数据库分析
2.1数据库需求分析
本系统是一套简单实用的仓库信息管理工具,该系统针对方便管理仓库信息的特点,根据各公司的仓库有关信息,查找信息设计开发的。
其模块功能完善,界面美观友好,操作简便快捷,为公司的仓库信息档案自动化管理提供了完善的解决方案。
主要功能包括:
仓库管理人员基本信息的查询、更新;
仓库信息的查询、更新;
货物基本信息的查询、更新;
出库基本信息的查询、更新;
入库基本信息的查询、更新。
仓库管理系统功能结构图2.1所示:
图2.1仓库管理系统功能结构图
2.2数据库概念结构分析
在仓库管理子系统中,一个仓库有一个管理员,则仓库与管理员之间具有一对一的关系;
仓库对货物有两种出入形式,多种货物可以存入多个仓库,则仓库与货物入库之间多对多的关系;
多种货物可以由多个仓库出货,则仓库与货物出库之间多对多的关系。
仓管实体属性E-R分图如图2.2所示:
图2.2仓管实体属性E-R分图
仓库实体属性E-R分图如图2.3所示:
图2.3仓库实体属性E-R分图
货物实体属性E-R分图如图2.4所示:
图2.4货物实体属性E-R分图
出库实体属性E-R分图如图2.5所示:
图2.5出库实体属性E-R分图
入库实体属性E-R分图如图2.6所示:
图2.6入库实体属性E-R分图
仓库管理子系统E-R图如图2.7所示:
图2.7仓库管理子系统E-R图
2.3数据库逻辑结构分析
根据图2.7仓库管理子系统E-R图,转换为关系模式为:
Depot(Dno,Sno,Dname,Dreserve,Daddress)
Storekeeper(Sno,Sname,Sage,Ssex,Stel,Saddress)
Ware(Wno,Wname,Wprice,Wdate,Wmanufacturer)
Stocking(Ssno,Sno,Wno,Dno,Sdate,Snumber,State)
Outbound(Ono,Dno,Wno,Sno,Odate,Onumber,Otate)
2.4数据字典
(1)表名:
Depot(Dno,Sno,Dname,Dreserve,Daddress),其含义:
仓库基本信息。
其结构如表2.1所示:
表2.1仓库信息表Depot
字段名
字段类型
是否为空
说明
备注
Dno
Char(10)
NOTNULL
仓库编号
主键
Sno
仓管编号
主键(外键)
Dname
VARCHAR(20)
NULL
仓库名称
Dreserve
float
仓库库存
Daddress
Char(20)
仓库地址
(2)表名:
Storekeeper(Sno,Sname,Sage,Ssex,Stel,Saddress),其含义:
仓库管理员的基本信息。
其结构如表2.2所示:
表2.2管理员信息表Storekeeper
Sname
仓管名字
Sage
smallint
年龄
Ssex
Char
(2)
性别
Stel
Char(11)
电话号码
Saddress
住址
(3)表名:
Ware(Wno,Wname,Wprice,Wdate,Wmanufacturer),其含义:
货物的基本信息。
其结构如表2.3所示:
表2.3货物基本信息表Ware
Wno
货物编号
Wname
货物名称
Wprince
money
货物单价
Wdate
datetime
生产日期
Wmanufacturer
生产厂家
(4)表明:
Stocking(Ssno,Sno,Wno,Dno,Sdate,Snumber,State),其含义:
货物入库的时间,数量,货物状态,等等一些基本信息。
其结构如表2.4所示:
表2.4货物入库基本信息表Stocking
Ssno
入库编号
Snumber
入库数量
State
nvarchar(50)
货物状态
Sdate
入库日期
(5)表明:
Outbound(Ono,Dno,Wno,Sno,Odate,Onumber,Otate),其含义:
货物出库的时间,数量,货物状态,等等一些基本信息。
其结构如表2.5所示:
表2.5货物出库基本信息表Outbound
Ono
出库编号
Odate
出库日期
Onumber
出库数量
Otate
3数据库操作部分
3.1数据库创建
用SQL语句创建数据表Storekeeper并建立相应属性的约束:
CreatetableStorekeeper
(Snochar(10)primarykey,
SnameVARCHAR(20),
Sagesmallint,
Ssexchar
(2)check(Ssex='
男'
orSsex='
女'
),
Stelchar(11),
Sadresschar(20)
);
关系图如图3.1所示:
图3.1仓库管理子系统关系图
测试数据如表3.1~3.5所示:
表3.1仓管基本信息数据表
表3.2仓库基本信息数据表
表3.3货物基本信息数据表
表3.4入库基本信息数据表
表3.5出库基本信息数据表
3.2数据库的更新操作
1、在Storekeeper表中插入一条仓管信息(060310133'
'
白雪'
20'
'
北京市'
)
insert
intostorekeeper
values('
060310133'
)
运行结果为:
2、将管理员060310133的性别改为"
女"
updatestorekeeper
setSsex='
whereSno=060310133
3、删除姓名为"
白雪"
的管理员的记录
delete
fromstorekeeper
whereSname='
3.3数据库的查询操作
1、查询地址在“江西省”的仓管所有信息
select*
fromstorekeeper
whereSadress='
江西省'
2、查询入库编号为"
RK-001"
的仓管的编号,姓名以与电话号码
selectSno,Sname,Stel
whereSnoin
(selectSno
fromstocking
whereSsno='
RK-001'
3.4数据库的备份和还原操作
(1)备份数据库选择”lixin_02”数据,右键选择“所有任务”,然后选择“备份数据库”,弹出对话框如图3.2所示,点击“添加”,弹出对话框如图3.3所示,选择要保存备份文件的路径和指定文件名,点击“确定”完成备份工作。
图3.2备份数据库
图3.3选择备份路径
(2)还原数据库首先确保“数据库”下有“lixin_02”数据库,如果没有建立一个以“lixin_02”命名的数据库,然后选择“lixin_02”,右键选择“所有任务”,然后点击“还原数据库”,弹出对话框如图3.4所示,选择“从设备”还原,点击“选择设备”,谈车对话框如图3.5所示,点击“添加”,出现对话框如图3.6所示,选择数据库的备份文件,点击“确定”完成还原数据库的工作。
图3.4还原数据库
图3.5选择还原设备
图3.6选择还原路径
4系统规范化设计
4.1数据库表的规范化设计
此仓库管理子系统属于第三范式。
4.2数据库的完整性设计
对Depot表中Dreserve进行约束,如图4.1所示:
图4.1Dreserve约束
对storekeeper中Sage,Ssex进行约束,如图4.2和4.3所示:
图4.2Sage约束
图4.3Ssex约束
4.3数据库的维护和安全性设计
设计user1对表storekeeper的查询访问权限,防止非法的数据库操作。
在企业管理器中控制用户访问权限
(1)展开"
lixin_02"
数据库,选择“用户”,右键选择“新建数据库用户”,弹出如图4.4所示的对话框。
图4.4新建用户
(2)在登录名中选择“新建”,在“名称”中填写“user1”,身份验证选“SQLServer身份验证”,密码为“LFYD”,数据库选择“lixin_02”,如图4.5所示,点击“确定”,重新输入一遍密码,如图4.6所示,点击“确定”。
图4.5新建登录
图4.6确认密码
2、在查询分析器中控制用户访问权限
把查询storekeeper表的权限授给用户user1
grantselect
onstorekeeper
touser1
验证结果如图4.7所示:
图4.7权限授权
5总结
5.1收获
通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念与思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,学以致用,自我创新,从中在学到用,从用又到学,不断修改,系统更新。
5.2不足和改进
在此次课程设计中,我们存在一些不足,其中我们对现实生活中的仓库管理子系统不是很了解,以至于在分析系统功能结构图时,遇到较多问题;
其次,我们对仓库的入库和出库以与管理的了解不是很深,导致我们在设计过程中常遇到问题,如在画E-R图时,常会混淆实体与实体之间的联系类型;
另外,在团队合作方面,小组成员讨论问题时,有时思想不一致,未能与时有效的解决该问题。
对于这些不足,我觉得要在以下几个方面加以注意:
首先,在学习专业课的时候要注意理论联系实际。
注意将课本上的知识应用到日常的操作中,真正做到学以致用。
只有这样,才能做到目的明确,才能有足够的学习动力。
其次,在学习过程中要经常与同学、老师进行交流,讨论所遇到的问题,并一起解决。
在讨论中解决问题,会节约很多时间,并且在交流的过程中,我们也可以学到更多的东西。
参考文献
[1]刘智斌,刘玉萍,杨柳编著.《数据库原理》(第二版).重庆大学出版社,2006
[2]萨师煊,王珊编著.《数据库系统概论》(第四版).高等教育出版社,2006
[3]钱雪忠,陶向东编著.《数据库原理与应用实验指导》.北京邮电大学出版社,2006
[4]龚小勇编著.《关系数据库与SQLServer2000》.机械工业出版社,2004
致谢
本系统在设计和实现的过程中,得到邓小鸿老师的大力支持和帮助。
在系统实现阶段,邓老师从需求分析一直到写论文,对我们严格要求,精心指导使我学到很多东西,并指出本系统的不足之处,提出我继续研究的方向。
在此非常感谢老师的精心指导。