仓库管理系统的设计.doc_第1页
仓库管理系统的设计.doc_第2页
仓库管理系统的设计.doc_第3页
仓库管理系统的设计.doc_第4页
仓库管理系统的设计.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库课程设计报告数据库课程设计报告仓库管理系统的设计专业学生姓名班级学号指导教师完成日期1目 录1 课程设计目的及要求12 课程设计的主要内容13数据库设计13.1 概念设计23.2 逻辑设计33.3 物理设计64程序模块设计84.1 登录界面模块设计84.2 出、入库模块设计84.3 查询模块设计95 小结10附 录11附录1 源程序清单1仓库管理系统的设计1 课程设计目的及要求 数据库课程设计是为数据库原理及应用课程而独立开设的实践性课程。数据库课程设计对于巩固数据库知识,加强学生的实际动手能力和提高学生综合素质十分必要。本课程分为系统分析与数据库设计、应用程序设计和系统集成调试三个阶段进行。数据库课程设计的主要目标是:a)加深对数据库系统、程序设计语言的理论知识的理解和应用水平。b)通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力,提高分析问题和解决问题的能力。2 课程设计的主要内容A)系统分析与数据库设计阶段1) 通过社会调查,选择一个实际应用数据库系统的课题。2)进行系统需求分析和系统设计,写出系统分析和设计报告。3)设计数据模型并进行优化,确定数据库结构、功能结构和系统安全性和完整性要求。B)应用程序设计阶段1)完成数据库定义工作,实现系统数据的数据处理和数据录入。2)实现应用程序的设计、编程、优化功能,实现数据安全性、数据完整性和并发控制技术等功能,并针对具体课题问题提出解决方法。C)系统集成调试阶段对系统的各个应用程序进行集成和调试,进一步优化系统性能,改善系统用户界面。系统需求分析 仓库管理系统主要用于仓库货品信息的管理,系统包括仓库管理、入库、出库和一些统计查询等几部分组成。仓库管理系统实现对货品信息的管理和总体的统计等,仓库信息,供货单位和操作员信息的查看及维护。仓库管理人员可以浏览、查询、添加、删除等产品的基本信息。 产品入库管理,可以填写入库单,确认产品入库; 产品出库管理,可以填写出库单,确认产品出库; 借出管理,凭借条借出,然后能够还库; 初始库存设置,设置库存的初始值,库存的上下警戒限; 可以进行盘库,反映每月、年的库存情况; 可以查询产品入库情况、出库情况、当前库存情况,可以按出库单、入库单,产品、时间进行查询;3数据库设计3.1 概念设计仓库管理系统基本信息管理操作员登陆产品信息管理仓库警示管理仓库管理操作客户信息管理查询产品信息入库操作管路修改产品信息删除产品信息添加产品信息仓库信息管理出库操作管理查询仓库信息图 仓库管理系统功能模块示意图3-1查询管理操作操作员信息管理查询产品信息查询客户信息填写入库单修改客户信息添加客户信息填写出库单删除客户信息产品数量报警仓库容量报警查询客户信息 E-R图:图 产品及其属性E-R图3-2 图 出入库单据属性E-R图3-3入库表仓库号产品号入库时间数量图 入库表属性E-R图3-4 出库表仓库号产品号出库时间数量图 出库表属性E-R图3-5 图 仓库管理系统E-R图3-6数据字典:名字:产品别名: 描述:唯一的标识一个产品的信息集合定义:产品=编号+名称+规格+体积+类别+价格+数量+重量+颜色+产地位置:存储在数据库名字:仓库别名: 描述:唯一的标识一个仓库的信息集合定义:仓库=仓库号+仓库名+剩余容量+总容量位置:存储在数据库名字:客户别名: 描述:唯一的标识一个客户特征的信息集合定义:客户=客户号+客户名+地址+电话 +客户类型位置:存储在数据库名字:管理员别名: 描述:唯一的标识管理员特征的信息集合定义:管理员=编号+性别+年龄+姓名+工龄+职务位置:存储在数据库名字:库存表别名: 描述:仓库存储物资的情况定义:库存表=仓库号+产品号+产品总数量位置:存储在数据库名字:入库表别名: 描述:物资的入库信息定义:入库表=产品号+入库时间+数量位置:存储在数据库名字:出库表别名: 描述:物资的出库信息定义:出库表=编号+出库时间+数量+管理员位置:存储在数据库3.2 逻辑设计根据E-R图,数据库仓库管理系统主要包含以下5个表:仓库信息表“仓库”、产品信息表“产品”、入库操作信息表“入库”、出库操作信息表“出库”和库存产品信息表“库存”。3.2.1 仓库信息表“仓库”仓库信息表“仓库”用来保存仓库信息,表“仓库”的结构如表所示。表3.2.1仓库信息表“仓库”编号字段名称数据结构说 明1仓库号int仓库编号2仓库名varchar(50)仓库名称3仓库备注varchar(100)仓库说明3.2.2 产品信息表“产品”产品信息表“产品”用来保存产品的基本信息,表“产品”的结构如表所示。表3.2.2产品信息表“产品”编号字段名称数据结构说 明1产品号int产品编号2产品名varchar(50)产品名称3产品数量int产品的数量4产品单价Varchar(20)产品的每单位价格5客户号int供应商编号3.2.3 入库操作信息表“入库表”入库操作信息表“入库表”用来保存入库操作的基本信息,表“入库表”的结构如表所示。表3.2.3入库操作信息表“入库表”编号字段名称数据结构说 明1产品号int入库产品编号2入库单价Varchar(20)入库产品单价3入库数量int入库产品数量4客户号int客户编号5仓库号int仓库编号6入库时间char(10)入库日期3.2.4 出库操作信息表“出库表”出库操作信息表“出库表”用来保存出库操作的基本信息。表“出库表”的结构如表所示。 表3.2.4出库操作信息表“出库表”编号字段名称数据结构说 明1产品号int出库产品编号2出库单价Varchar(20)出库产品单价3出库数量int出库产品数量4客户号int客户编号5仓库号int仓库编号6出库时间char(20)出库日期3.2.5库存产品信息表“库存表”库存产品信息表“库存表”用来保存库存产品的基本信息,表“库存表”的结构如表所示。 表3.2.5库存产品信息表“库存”编号字段名称数据结构说 明1产品号int产品编号2入库价格Varchar(20)产品入库单价3现存数量Int产品数量4仓库号Int仓库编号3.3 物理设计数据库的物理结构设计是指为给顶的一个逻辑数据模型选择最适合应用环境的物理结构。关系数据库的物理结构主要是指数据的存取方法和存储结构。数据库的物理结构设计分为两个部分,首先是确定数据库的物理结构,其次是对所设计的物理结构进行评估。确定数据库的物理结构为确定数据库的物理结构,设计人员必须了解下面的几个问题。详细了解给定的DBMS的功能和特点,特别是该DBMS所提供的物理环境和功能;熟悉应用环境,了解所设计的应用系统中各部分的重要程度、处理频率、对响应时间的要求,并把它们作为物理结构设计过程中平衡时间和空间效率时的依据;了解外存设备的特性, 如分块原则、块因子大小的规定、设备的I/O特性等。在对上述问题进行了全面的了解之后,就可以进行物理结构的设计了。一般地,物理结构设计的内容包括如下几个方面。确定数据的存储结构。在此过程中需考虑存取时间、空间效率和维护代价间的平衡,如在引入冗余数据以加快存取速度时应兼顾系统的空间效率。选择合适的存取路径,例如确定应该为哪些关系模式建立索引,索引关键字是什么等。确定数据的存放位置,例如确定数据存放在一个磁盘上还是多个磁盘上,什么数据该存放在高速存储器上,什么应该存放在低速存储器上等。确定存取分布,许多DBMS都提供了一些存储分配参数供设计者使用,例如缓冲区的大小和个数、块的长度、块因子的大小等,设计者必须规定其中的一些参数的位置。4程序模块设计4.1 登录界面模块设计系统登陆图,客户填完用户名及密码可以进入主界面。 图 系统登陆图4-14.2出、入库模块设计商品入库登记模块图,可以填写商品编号,数量、规格等信息。 图 商品入库登记图4-2商品出库管理图,主要录入一些商品出库单据信息。 图 商品出库管理图4-34.3 查询模块设计商品出、入库可以按照时间进行查询。 图 出入库查询图4-4库存商品查询,可以按照商品种类、名称、产地进行查询。5 小结经过几个星期的努力终于把仓库管理系统做完了,通过做这次课程设计,我对数据库系统有了更深的认识和理解,把理论知识和实践结合起来,使理论知识得到了运用,同时自己也掌握了知识。经过自己亲手实践后,就会真正明白实践是检验真理的唯一标准。在设计的过程中,我参考了很多有关数据库的资料,掌握了很多课堂上没有的知识,提高了自己的能力,了解了软件开发的过程,受益匪浅。同时也发现了自己的不足之处并且改正,为以后的工作和学习打下了良好的基础。 附 录附录1源程序清单1. 登陆代码Private Sub Command1_Click()Dim cn As New ADODB.Connectioncn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim rs, rss As New ADODB.RecordsetSet rs = cn.Execute(select * from 管理员 where 管理员名= & Text1.Text & )Set rss = cn.Execute(select * from 管理员 where 密码= & Text2.Text & )If rs.EOF Then MsgBox 用户名错误! Text1.Text = Text1.SetFocus Else If rss.EOF Then MsgBox 密码错误! Text2.Text = Text2.SetFocus Else Me.Hide Form2.Show MsgBox (Text1.Text + ) End IfEnd IfEnd Sub2. 添加客户信息代码Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim a1, a2, a3, a4, a5, a6, a7 As Stringa1 = Text1.Texta2 = Text2.Texta3 = Text3.Texta4 = Text4.Texta5 = Text5.Texta6 = Text6.Texta7 = Combo1.Textsql = insert into 客户 values( & a1 & , & a2 & , & a7 & , & a3 & , & a4 & , & a5 & , & a6 & )cn.Execute (sql)cn.CloseMsgBox 已添加客户信息End Sub3. 根据客户号查看、删除客户代码Private Sub Command1_Click()Dim kehuhao As Stringkehuhao = Text8.TextAdodc1.Recordset.Find 客户号= & Val(kehuhao)End SubPrivate Sub Command2_Click()Dim cn As New ADODB.ConnectionDim sql As StringDim kehuhao As Stringkehuhao = Text8.Textcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Opensql = delete from 客户 where 客户号= & kehuhao & cn.Execute (sql)MsgBox 已删除编号为 & kehuhao & 的客户信息End Sub4. 查看客户信息代码Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenIf Combo1.Text = 供应商 Thenrs.Open select * from 客户 where 客户类型=供应商, cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.Refresh Else If Combo1.Text = 购货商 Then rs.Open select * from 客户 where 客户类型=购货商, cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.Refresh Else rs.Open select * from 客户, cn, adOpenKeyset, adLockBatchOptimistic, adCmdText Set DataGrid1.DataSource = rsDataGrid1.RefreshEnd IfEnd IfEnd SubPrivate Sub Command2_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 客户 where 客户号= & Text1.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub Command3_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 客户 where 客户名= & Text2.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd Sub5. 查询仓库信息Dim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 仓库 where 仓库号= & Text1.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub Command2_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 仓库 where 仓库名= & Text2.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd Sub6. 添加仓库信息Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim a1, a2, a3 As Stringa1 = Text1.Texta2 = Text2.Texta3 = Text3.Textsql = insert into 仓库 values( & a1 & , & a2 & , & a3 & )cn.Execute (sql)cn.CloseMsgBox 已添加仓库信息End Sub7. 查看删除仓库信息Private Sub Command1_Click()Dim cangkuhao As Stringcangkuhao = Text1.TextAdodc1.Recordset.Find 产品号= & Val(cangkuhao)End SubPrivate Sub Command2_Click()Dim cn As New ADODB.ConnectionDim sql As StringDim cangkuhao As Stringcangkuhao = Text1.Textcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Opensql = delete from 仓库 where 仓库号= & cangkuhao & cn.Execute (sql)MsgBox 已删除编号为 & cangkuhao & 的仓库信息End Sub8. 添加操作员信息Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim a1, a2, a3 As Stringa1 = Text1.Texta2 = Text2.Texta3 = Text3.Textsql = insert into 操作员 values( & a1 & , & a2 & , & a3 & )cn.Execute (sql)cn.CloseMsgBox 已添加操作员信息End Sub9. 查看删除操作员信息Private Sub Command3_Click()Dim caozuoyuanhao As Stringcaozuoyuanhao = Text1.TextAdodc1.Recordset.Find 操作员号= & Val(caozuoyuanhao)End SubPrivate Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As StringDim kehuhao As Stringcaozuoyuanhao = Text1.Textcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Opensql = delete from 操作员 where 操作员号= & caozuoyuanhao & cn.Execute (sql)MsgBox 已删除编号为 & caozuoyuanhao & 的操作员信息End Sub10. 添加产品信息Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim a1, a2, a3, a4, a5 As Stringa1 = Text1.Texta2 = Text2.Texta3 = Text3.Texta4 = Text4.Texta5 = Text5.Textsql = insert into 产品 values( & a1 & , & a2 & , & a3 & , & a4 & , & a5 & )cn.Execute (sql)cn.CloseMsgBox 已添加产品信息End Sub11. 查看删除产品信息Private Sub Command3_Click()Dim chanpinhao As Stringchanpinhao = Text1.TextAdodc1.Recordset.Find 产品号= & Val(chanpinhao)End SubPrivate Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As StringDim kehuhao As Stringchanpinhao = Text1.Textcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Opensql = delete from 产品 where 产品号= & chanpinhao & cn.Execute (sql)MsgBox 已删除编号为 & chanpinhao & 的产品信息End Sub12. 查询产品信息Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 产品 where 仓库号= & Text1.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub Command2_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 产品 where 产品号= & Text2.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub Command3_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 产品 where 客户号= & Text3.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd Sub13. 填写入库表Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim a1, a2, a3, a4, a5, a6 As Stringa1 = Text1.Texta2 = Text2.Texta3 = Text3.Texta4 = Text4.Texta5 = Text5.Texta6 = Text6.Textsql = insert into 入库表 values( & a1 & , & a2 & , & a3 & , & a4 & , & a5 & , & a6 & )cn.Execute (sql)cn.CloseMsgBox 已填写入库表信息End Sub14. 填写出库表Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.OpenDim a1, a2, a3, a4, a5, a6 As Stringa1 = Text1.Texta2 = Text2.Texta3 = Text3.Texta4 = Text4.Texta5 = Text5.Texta6 = Text6.Textsql = insert into 出库表 values( & a1 & , & a2 & , & a3 & , & a4 & , & a5 & , & a6 & )cn.Execute (sql)cn.CloseMsgBox 已填写出库表信息End Sub15. 入库表信息查询Private Sub Command1_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 入库表 where 产品号= & Text1.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub Command2_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=仓库管理系统;Data Source=WWW-4FDE9FFEC01cn.Openrs.Open select * from 入库表 where 入库时间= & Text2.Text & , cn, adOpenKeyset, adLockBatchOptimistic, adCmdTextSet DataGrid1.DataSource = rsDataGrid1.RefreshEnd SubPrivate Sub Command3_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As Stringcn.ConnectionString = Provider=SQLOLEDB.1;Integrated Securi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论