数据库课程设计物资管理系统.docx
《数据库课程设计物资管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计物资管理系统.docx(35页珍藏版)》请在冰豆网上搜索。
数据库课程设计物资管理系统
1概述-1-
1.1项目背景:
-1-
1.2编写目的:
-1-
1.3项目名称:
-1-
1.4开发环境:
-1-
2需求分析-2-
2.1问题的提出:
-2-
2.2需完成的功能:
-2-
3数据库设计的过程-3-
3.1概念模型设计-3-
3.2逻辑数据库设计-6-
3.3规范化理论的应用-7-
3.4物理数据库设计-8-
4软件功能设计-12-
4.1系统功能分析-12-
4.2系统功能模块设计-13-
5设计心得-19-
参考文献-20-
附录-21-
第一章概述
1.1、项目背景
物资管理系统是企业管理的一个重要内容,随着时代的进步,企业也逐渐变的庞大起来。
如何管理好企业内部物质的信息,成为企业管理中的一个大问题。
在这种情况下,一个可以规范化,自动化的物资管理信息系统就显得非常必要。
最初的物资管理,都是靠人力来完成的。
当企业规模比较小的时候,人力可以完成,随着企业的规模越来越大,企业的进出物资数量也越来越多,依然维持着人力进行物资管理,必然会造成工作效率低,工作错误增高的问题。
物资管理系统就是把分散的企事业单位的职工信息实行统一,集中,规范的收集管理,建立分类编号管理,电脑存储查询以及防火,防潮,防蛀,防盗等现代化,专业化的管理系统,为企事业单位和职工解除后顾之忧。
1.2、编写目的:
物资管理系统是为了配合相关部门对自身本部门物资的管理,充分运用现代化信息技术手段高效、快捷的工作而开发的软件系统。
物资管理信息系统为企事业单位提供信息咨询,信息检索,信息存取等服务。
1.3、项目名称:
物资管理系统.
1.4、开发环境:
本系统使用6.0中文版作为前台设计和2000管理数据库
6.0作为公司开发的6.0套件的一部分,是一个功能丰富、方便实用的程序开发环境,它的一个很大的特色就是功能强大、编程简单的数据库操作能力。
可视化的开发环境、丰富的数据库访问空间的支持使得成为数据库应用程序项目中重要的开发工具。
2000中文版是基于客户机/服务器模式的新一代大型数据库管理系统,它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用,可为企业的数据管理提供强大的支持,并采取有效的措施来实现数据的安全性、完整性、备份和恢复。
是目前广泛使用的关系型数据库。
第二章需求分析
2.1、问题的提出:
物资管理是一般工业、商业企业生产管理环节中主要的一环,需要对物资基本信息管理,对物质调配信息等进行完整的监控,这样才能跟有效地利用物资。
物资入库的时候首先需要登记物质的基本信息,包括物资的种类、名称、型号、单位、单价等;然后登记入、出库信息,包括物资的基本信息,入、出库人,经办人,物质数量,材料说明的等;对于仓库中的物资,即对剩余物资进行查询和统计。
长期以来,物资管理工作中的信息管理是采用人工的方式,要付出大量人力,填写各种表格、凭证、账册、卡片和文件。
由于信息是随着时间不断变化的,各业务部门对信息的使用要求也各不相同,所以要按照不同的分类经常不断地汇总、统计,往往要做许多重复登记和转抄。
这种手工操作的管理方式,不仅浪费人力,而且存在许多缺点:
(1)处理速度慢,影响信息及时性。
(2)易出现错误,影响信息精确性。
(3)不便于查询。
(4)缺乏综合性,不能起控制作用。
由于这些缺点,大大降低了信息的利用价值,显然越来越不适应现代物资管理工作的需要。
因此,发展以电子计算机为基础的物资管理系统已是十分迫切和必要的了。
2.2、需完成的功能:
针对一般物资管理信息系统的需求,通过对上面物资调配工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:
●有关物资基本信息的输入、包括物资编号、物资名称、规格型号、种类和计量单位等;
●物资基本信息的查询、修改;
●入库信息的输入、查询、修改;
●出库信息的输入、查询、修改;
●物质剩余物资的查询、预览,统计查询。
第三章数据库设计的过程
3.1、数据库需求分析
用户的需求具体体现在各种的信息的提供、保存、更新和查询等方面。
这就要求数据库能够充分满足各种输入信息和输出信息。
开发者要收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典。
为下一步的数据库具体设计做好充分的准备。
再仔细分析物资管理信息系统需求的基础上,将得到以下如图3.1所示的本系统所处理的数据流程。
图3.1物资管理信息系统数据流程图
针对一般物资管理信息系统的需求,通过对物资调配工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:
●物资基本信息,包括的数据项有:
物资编号、物资名称、规格型号、类别、计量单位等。
●入库物资信息,包括的数据项有:
物资编号、物资名称、规格型号、类别、计量单位、数量、单价、金额、领用时间、领用人、经办人、保管人、仓库、备注等。
●出库物资信息,包括的数据项有:
物资编号、物资名称、规格型号、类别、计量单位、数量、单价、金额、领用时间、领用人、经办人、保管人、仓库、备注等。
●物资余额信息,包括的数据项有:
物资编号、物资名称、规格型号、类别、计量单位、数量、金额、仓库等。
3.2、概念模型设计
得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种试题以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些试题包含各种具体信息,通过相互间的作用形成数据的流动。
本系统根据上面的设计规划出的实体有:
物资基本信息实体、物资入库信息实体、物资出库信息实体、物资余额信息实体。
图3.21物资基本信息实体图
图3.22物资入库信息实体图
图3.23物资出库信息实体图
图3.24物资余额信息实体图
在找出所有实体的基础上,需要进一步的分析各个实体之间的关系,经过分析可以的得到所有实体的E—R图;如图3.25是通过E—R图来说明这些实体之间的关系:
图3.25物质管理信息的E—R图
3.2、逻辑数据库设计
通过对数据库概念模型的设计,确定以下是该系统需建立的几个表格。
表3.21物资表
物资表
字段名
类型
其他
备注
(8)
N
物资编号
(20)
N
物资名称
(20)
N
物资型号
(10)
类型
(10)
计量单位
表3.22物资入库表
物资入库表
字段名
类型
其他
备注
(14)
N
入库号
(8)
N
物资编号
(20),
N
物资名称
(20),
规格型号
(10),
N
类别
(10),
N
计量单位
(5,0)
N
数量
(8,2)
N
单价
(10,2)
N
金额
N
入库时间
(10)
N
经办人
(10)
N
保管人
(10),
仓库
备注
表3.23物资入库表
物资入库表
字段名
类型
其他
备注
(8)
N
物资编号
(20),
N
物资名称
(20),
物资型号
(10),
N
类别
(10),
N
计量单位
(5,0)
N
数量
(8,2)
N
单价
(10),
仓库
备注
表3.24物资领用表
物资领用表
字段名
类型
其他
备注
(14)
N
领用号
(8)
N
物资编号
(20),
N
物资名称
(20),
规格型号
(10),
N
类别
(10),
N
计量单位
(5,0)
N
数量
(8,2)
N
单价
(10,2)
N
金额
N
领用时间
(10)
N
领用人
(10)
N
保管人
(10),
仓库
备注
3.3、规范化理论的应用
在以上的逻辑分析中,我们不难得出这些关系转化都在第三范式中。
3.4、物理数据库设计
在完成了数据库的逻辑设计之后,即可开始数据库的物理设计。
基于以上数据库逻辑设计,考虑到程序设计的简易性及通用性,本物资管理信息系统采用的2000数据库,并在其下创建了一个数据库和4个数据表。
3.4.1建立概念数据库模型
根据前面的概念和逻辑模型设计,我们在12中建立1,如图3.4.1所示:
图3.4.1概念数据可模型
3.4.2将概念模型转换成物理模型
概念模型建好后,在12的T选项中选择,将概念模型转换成物理模型,如图所示:
图3.4.2物理数据库模型
3.4.3生成数据库代码
建好物理模型后,在选择,生成数据库代码,以下是建立数据库及其表格的代码
(1)建数据库
(*='')
(2)建表
(*=(N'[].[]')(,N'')=1)
[].[]
(*=(N'[].[]')(,N'')=1)
[].[]
(*=(N'[].[]')(,N'')=1)
[].[]
(*=(N'[].[]')(,N'')=1)
[].[]
[].[](
[][](8),
[][](20),
[][](20),
[][](10),
[][](10)
)[]
[].[](
[][](14),
[][](8),
[][](20),
[][](20),
[][](10),
[][](10),
[][](5,0),
[][](8,2),
[][](10,2),
[][],
[][](10),
[][](10),
[][](10),
[][]
)[][]
[].[](
[][](8),
[][](20),
[][](20),
[][](10),
[][]
(2),
[][](5,0),
[][](10,2),
[][](10),
[][]
)[][]
[].[](
[][](14),
[][](8),
[][](20),
[][](20),
[][](10),
[][]
(2),
[][](5,0),
[][](8,2),
[][](10,2),
[][],
[][](10),
[][](10),
[][](10),
[][]
)[][]
3.4.4生成数据库
打开的查询分析器,输入以上代码,于是得到了我们需要的数据库(物资管理系统)。
第四章软件功能设计
4.1、系统功能分析
系统开发的总体设计任务就是实现物质信息的系统化,规范化和自动化。
系统功能分析是在系统开发总体任务的基础上进行的,本系统中需要的的主要功能有:
◆添加用户;
◆删除用户;
◆修改用户密码;
◆浏览物质信息;
◆添加物质信息;
◆删除物质信息
◆物质剩余信息查询;
对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图4.1所示的系统功能模块图。
图4.1系统功能模块图
4.2系统功能模块设计
本系统的运行环境为6.0
4.2.1登录
程序执行后点击进入系统按钮将弹出系统的登录界面,如下图所示:
用数据库中存储的用户信息登录系统,如图4.2.1所示
图4.2.1登录界面
若用户输入的用户信息错误,会弹出警告,登录3次失败后系统自动退出
4.2.2主界面
登录成功后进入系统的主界面,如图4.2.2:
通过菜单栏,用户可以参与数据的相关操作,如插入、修改、删除和统计等。
图4.2.2主菜单
4.2.3浏览物质信息
通过各模块中的浏览物质信息,可以对物质的各种信息进行浏览,其中包括按表和按行浏览两种方式。
如图4.2.32和4.2.33所示时对物质基本信息进行的两种浏览方式。
图4.2.31主菜单上的浏览选项
图4.2.32按表格浏览物资表
图4.2.33按行浏览物资表
其余的浏览操作与上述的操作类似,这里不再赘述。
4.2.4添加物质信息
每个关于物质信息是我模块都可以进行添加信息的操作,如图4.2.4是添加物质基本信息
4.2.41主菜单上的添加选项
图4.2.42添加界面
图4.2.43添加信息
图4.2.44添加成功提示
其余的添加操作与上述的操作类似,这里不再赘述。
4.2.5删除物质信息
点击系统中的删除按钮,可对物质的各种信息进行删除,如对物质基本信息进行删除操作:
(1)按物质编号删除
点击删除菜单的子菜单,选择按物质编号删除,弹出删除删除信息的界面如图4.2.52,在其中输入或选择物质的编号,选择确定,将弹出警告提示,如图4.2.54所示。
选择确定,系统给出删除成功的提示,如图4.2.55所示,如果选择取消,则弹出操作被撤销的提示,如图4.2.56所示
4.2.51主界面的删除选项图4.2.52删除界面
图4.2.53删除物资图4.2.54删除警告
图4.2.55删除成功图4.2.56删除被撤销
(2)按物质名称删除
图4.2.57删除界面图4.2.58删除物质
按物质名称删除与按物质编号删除类似,这里不再赘述。
其余的物质的各种信息删除也与上面说讲的类似,这里就不再多说了
4.2.6修改物质信息
如果想要修改物质的各种信息,点击各个模块中的修改选项,将弹出当前的各种物质信息,如图4.2.61是物资基本信息的修改选项,图4.2.62所示是对物质基本信息所进行的修改操作:
图4.2.61主界面的修改选项
图4.2.62修改物质信息
修改完后,点击“确定”,于是修改就成功了。
点击“取消”,则操作被撤销,点击退出,则返回主界面。
其余的物质信息的修改操作也与上面说讲的类似,这里就不再多说了
4.2.7余额统计
通过主界面的余额统计选项,可对各种物质的余额进行统计
图4.2.71主界面的余额统计选项图4.2.72统计物质余额
图4.2.73统计余额
4.2.8系统帮助
用户点击菜单栏上的"关于",可以查询到系统的简介和使用说明
图4.2.8关于系统
第五章设计心得
回顾该系统从选题,到调研、需求分析、设计、编码实现、测试等,这系列连贯的过程,感想颇多,收获也很多。
大致的总结几点,如下:
1.设计开发一个软件,首先要了解所涉及到行业的现状,一定要想办法进行行业调研,从不同途径获取该行业的专业知识。
合理安排系统设计开发时间,进行实际开发会发现需求分析与系统设计占主要的时间,如果前面的工作做好了,编码实现占用的时间很短。
所以我们要借助软件工程的思想——对软件开发过程进行控制。
2.在开发一个系统时,前期的分析准备工作非常的重要。
对于系统的需求要明确,这样才能做到有的放矢。
特别是对于系统中数据的存储和重要算法的设计,设计的不好会出现大量的冗余,不仅浪费存储空间,还影响查询效率。
3.在设计的初期,对一个功能模块的设计,要想出两种或两种以上方案,这样可以进行比较,从而获得更佳的设计方案,设计开发过程中一定要吸取经验教训,避免返工。
尤其是一些重要算法或功能。
在对具体实现功能模块进行编程时,要养成良好的加注释的习惯,这样的话不仅能理清思路,而且可以为以后的调试程序带来很大的方便。
由于本人即本人所在的小组是初次开发系统,在知识、经验方面都存在着不足。
另外,在整个开发的过程中,时间也比较仓促。
因此,该系统还有许多不尽如人意的地方,比如联机文档比较少,用户界面不够美观,出错处理不够,系统维护功能不全,对于数据的一致性的问题也没有完全解决等多方面问题,这些都有待工作中进一步改善。
谨请老师提出宝贵的意见。
参考文献
[1]王珊,萨师煊.数据库系统概论[M].第四版.北京:
高等教育出版社,2006
[2]易钢,刘少华,刘艳松.新编程序设计教程[M].长沙国防科技大学出版社,2009
[3]陈文军,陈晓铭.数据库编程[M].北京:
清华大学出版社,2005
[4]袁福庆.程序设计标准教程[M].上海:
上海科学普及出版社,2007
附录
工程模块设计代码
'用于数据库连接
'用于保存记录集
1'1用于保存记录集
2'2用于保存记录集
登录界面设计代码
i'变量i用于累计连接的错误次数
1()'确定
(1)=""'如果用户名为空,则给出提示
"请输入用户名",,"注意"
1'将焦点定位在用户名文本框中
'出错则转向处执行
="{}2"
'按的设置打开指定的连接
'关闭当前窗口
3'显示系统的主菜单窗口3
:
'错误处理程序入口
i=i+1'连接错误,变量i累加1
i<=2'如果连接错误次数不超过2两次
"连接失败,请重试用户名或密码",,"注意"
1
'如果连接错误次数超过2两次
"连接失败次数过多,你不能使用本系统",,"注意"
'结束系统的运行
2()'退出按钮
'回到主封面
1()
()
1()'用户名框获得焦点时
'选中1中的文本
1=0
1=
(1)
1(,)
=13'如果在用户名框中输入了回车键,则
2'将焦点切换到密码框
2()'密码框获得焦点时
'选中2中的文本
2=0
2=
(2)
2(,)
=13'在密码框输入完密码并按下了回车键
(1)=""'如果用户名为空,则给出提示
"请输入用户名",,"注意"
1'将焦点定位在用户名文本框中
'出错则转向处执行
="{}2"
3'显示系统的主菜单窗口3
:
'错误处理程序入口
i=i+1'连接错误,变量i累加1
i<=2
"连接失败,请重试用户名或密码",,"注意"
1
"连接失败次数过多,你不能使用本系统",,"注意"
主界面设计部分代码
()
1
111()
=
"",,,,'打开物资基本信息表
7="按表格浏览物资表"
71'用7实现对物资基本信息表按表格浏览
112()'按行浏览物资表
=
"",,,,
4="按行浏览物资表"
41'用4实现对物资基本信息表按行浏览
11()
'用于保存查询字符串
181='设置显示物资编号的组合框有效
181='设置显示物资编号的文字提示有效
182='设置显示物资名称的组合框有效
182='设置显示物资名称的文字提示无效
=""
1='如果记录集1处于打开状态
1'关闭记录集1
1,,,'按查询字符串指定的查询产生记录集
181=1'设置16的显示物资编号的组合框的数据源为1
181=""'设置16的显示物资编号的组合框与记录集1的学号字段绑定
181=""
182=""
181
12()
'用于保存查询字符串
181='设置显示物资编号的组合框有效
181='设置显示物资编号的文字提示有效
182='设置显示物资名称的组合框有效
182='设置显示物资名称的文字提示无效
=""'产生查询字符串,用于从物资表中选择物资名称。
1='如果记录集1处于打开状态
1'关闭记录集1
1,,,'按查询字符串指定的查询产生记录集
182=1'设置16的显示物资名称的组合框的数据源为1
182=""'设置16的显示物资名称的组合框与记录集1的物资名称字段绑定
181=""
182=""
181
()
=
1=
1
2=
2
=
1=
2=
=
2()
1()'添加物资基本信息
91
1()
='如果记录集处于打开状态
'关闭记录集
"",,,,
121
添加物资基本信息代码
1()
="('"&1&"','"&2&"','"&5&"','"&3&"','"&4&"')"
'如果出错则转向处执行
'开始事务
()'执行添加
'提交事务
"添加成功"'显示添加操作完成的提示消息
1="":
2="":
5="":
3="":
4=""'清空在界面上录入的信息
:
'错误处理程序入口,当添加操作出现错误时执行
"添加失败"
'撤销事务
2()
()
删除物资基本信息代码
1()
(1)<>""
(2)=""
="'"&
(1)&"%'"
(1)=""
(2)<>""
="'"&
(2)&"%'"
a=("确定要删除指定的物资基本信息吗?
",+,"注意")
a=
"指定的物资基本信息已经从数据库中删除",,"注意"
"删除被撤消",,"注意"
2()
()
修改物资基本信息代码
1()
'按确定按钮,进行批更新
2()
'按取消按钮,取消批更新
3()
1()
()