数据库课程设计--超市进销管理系统.docx_第1页
数据库课程设计--超市进销管理系统.docx_第2页
数据库课程设计--超市进销管理系统.docx_第3页
数据库课程设计--超市进销管理系统.docx_第4页
数据库课程设计--超市进销管理系统.docx_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

数据库课程设计题 目: 超市进销管理系统系 别: 计算机系班 级: 12计算机科学与技术姓 名: 学 号: 指导老师: 完成时间: 2014.6.23摘 要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。本系统是在管理信息系统的理论和方法指导下、数据库技术支持下完成的。本文在结构上首先论述了毕业设计选题的背景、目的和意义,然后叙述了开发环境、开发平台以及数据库技术,接着用表格和图片的方式介绍了系统的整体规划,接下来是系统在具体实现中的详细内容,最终本系统能够完成信息的输入、输出,数据的修改,本系统界面友好,操作简单,比较实用。关键词:控件;窗体;报表;关系数据库管理系统;VB。第一章 开发环境、工具介绍该软件是在Windows 7.0 + Visual Basic 6.0 + access 2010的环境下完成的。下面就对这些开发工具进行介绍:2.1 Visual Basic 6.0微软公司的Visual Basic 6.0是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。利用VISUAL BASIC 程序设计语言,可以很方便地设计出在WINDOWS环境下运行的应用程序。故而,实现本系统VB是一个相对较好的选择。2.1.1 Visual Basic的编程特点Visual Basic语言的出现为Windows下的编程提出了一个新概念,利用Visual Basic的动态数据交换、对象的链接和嵌入、动态链接库、ActiveX技术可以很方便地设计出功能强大的应用程序。利用Visual Basic语言编程有以下几个特点:1)、可视化程序设计在Visual Basic中开发的应用程序,不但有丰富的图形界面,同时由用户为开发图形界面添加的代码真是少而又少,因为在设计图形界面的过程中只需设置 ActiveX控件的属性即可。2)、强大的数据库和网络功能随着Visual Basic 语言的向前发展,它在数据库和网络方面的功能优势就愈加明显,利用Visual Basic 中的ODBC开放式的数据库访问技术可以很方便地开发出自己的数据库应用程序;利用 Visual Basic自带的可视化数据管理器和报表生成器,完全可以在Visual Basic就完成数据库的开发工作。3)、其他特性在Visual Basic以前的版本中,由于仍然摆脱不了解释执行的代码运行机制,所以在相当的程度上制约了 Visual Basic 的发展。从Visual Basic5.0版本开始,在Visual Basic 中制作的应用程序都改变为编译执行,使得Visual Basic的代码效率有了很大的提高,同时执行的速度 也加快了解30%(同Visual Basic4.0相比)。当然在 Visual Basic中还有其它特性,例如:l 面向对象的编程语言;l 结构化程序设计;l 事件驱动的程序设计:在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时才会调用过程。在事件驱动的应用程序中,代码不是按预定的路径执行,而是在响不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序,决定了代码执行的顺序,因此应用程序每次运行时所经过的路径都是不同的。l 支持动态链接库;l 应用程序之间的资源共享; l 事件驱动的程序设计;在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时才会调用过程。在事件驱动的应用程序中,代码不是按预定的路径执行,而是在响不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序,决定了代码执行的顺序,因此应用程序每次运行时所经过的路径都是不同的。l 支持动态链接库;l 应用程序之间的资源共享2.1.2 vb支持的数据库系统VB支持对多格式的数据库的访问和维护,无论是Access还是Foxpro中创建的数据库,都可以用VB打开,对其进行查询、修改和删除等操作。事实上,VB几乎支持对市面上所有数据库的访问。VB可以访问的数据库可以简单的分为三类,即:Microsoft Access格式数据库,外部数据库和ODBC数据库。VB对多种数据库格式的支持,大大的增强了开发数据库应用程序的能力。2.1.3 数据库开发中的三大工具Visual Basic在数据库应用程序的开发领域中,提供包含数据管理(DataManager),数据控件(Data Control)以及数据编程对象(数据访问对象(DAO)、远程数据对象(RDO)和ActiveX数据对象(ADO)等功能强大的工具,协助设计人员轻松的连接数据库文件,并访问其中的数据,在功能方面与其他一些专业数据库软件(如FoxPro,Micosoft Access等)不相上下。数据管理器(Data Manager)是Visual Basical已有的老成员之一,拓本盛举有的Jet数据库引擎(Database Engine)可以帮助VB程序元件立即维护数据库内容,并可通过输入查询或查找数据库信息,而不必再通过其他数据库软件另外去设计数据库。数据控件是VB所提供的基本控件成员之一。它使得设计者省下一堆程序代码编写的工作,能够轻松的设计及维护数据库内容。数据控件可以通过一些属性的设置去链接某个数据库文件,但是它本身并无法显示数据库各个记录的内容,必须在搭配其他具有数据感知(Data Aware)功能的控件对应并显示一个字段内容,以方便地进行记录的浏览及编辑工作。VB提供的数据访问对象(Data Access Object;DAO)让程序设计者拥有更大的发挥空间。借助程序代码编写,直接控制Jet数据库引擎,配合数据库控件,能够开发出更具弹性且高效率的数据应用程序。RDO是处理远程数据库的一些专门需要的对象集合。使用RDO可以不用本地的查询机就能访问ODBC数据源,这无疑将大大提高应用程序的性能。ADO是VB6.0中新增的对象,它是一个更简单的对象模型,它更好的集成了其它数据访问技术,并且对本地和远程数据库均有共同的界面,可以取代DAO和RDO。ADO更易于使用。我们在本系统中利用数据管理器创建了数据库及数据库表,并采用了ADO数据访问技术。2.2 Microsoft Access 2010Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它是微软OFFICE的一个成员, 在包括专业版和更高版本的office版本里面被单独出售。2012年12月4日,最新的微软Office Access 2013在微软Office 2013里发布,微软Office Access 2010 是前一个版本。2.2.1 access 2010 的用途Access的用途体现在两个方面:一、用来进行数据分析: access有强大的数据处理、统计分析能力,利用access的查询功能,可以方便地进行各类汇总、平均等统计。并可灵活设置统计的条件。比如在统计分析上万条记录、十几万条记录及以上的数据时速度快且操作方便,这一点是Excel无法与之相比的。 这一点体现在:会用access,提高了工作效率和工作能力。二、用来开发软件: access用来开发软件,比如生产管理、销售管理、库存管理等各类企业管理软件,其最大的优点是:易学!非计算机专业的人员,也能学会。低成本地满足了那些从事企业管理工作的人员的管理需要,通过软件来规范同事、下属的行为,推行其管理思想。(VB、.net、 C语言等开发工具对于非计算机专业人员来说太难了,而access则很容易)。 这一点体现在:实现了管理人员(非计算机专业毕业)开发出软件的“梦想”,从而转型为“懂管理+会编程”的复合型人才。2.2.2 access 2010的特征Access是一款数据库应用的开发工具软件,其开发对象主要是Microsoft JET数据库和Microsoft SQLServer数据库。由于在Office 97及以前的版本中,Microsoft JET 3.51及以前版本的数据库引擎是随Access一起安装和发布的,JET数据库与Access就有了天生的血缘关系,并且Access对JET数据库做了很多地扩充,如,在Access的环境中,可以在查询中使用自己编写的VBA函数,Access的窗体、报表、宏和模块是作为一种特殊数据存储在JET数据库文件(.mdb)中,只有在Access环境中才能使用这些对象。随着,Microsoft Windows操作系统版本的不断升级和改良,在Windows XP以后版本中,Microsoft将JET数据库引擎集成在Windwos操作系统中作为系统组件的一部分一起发布(主要原因是Windows中还有很多组件需要使用JET引擎,活动目录等)。从此JET数据库引擎从Access中分离出来,而Access也就成为了一个专门的数据库应用开发工具。由于JET数据库引擎的分离,很多应用程序采用了JET数据库作为其应用的数据库,JET数据库符合关系数据库理论,有着完整的数据定义、数据处理、数据安全管理体系。在Microsoft Windows操作系统中,随着Microsoft在ActiveX技术上的发展,Windows中不断升级换代的数据访问组件,这些组件包括ODBC、OLEDB、DAO、ADO、ADO,JET数据库引擎和这些组件一起已组成了免费的数据库管理系统。Access拥有的报表创建功能能够处理任何它能够访问的数据源。Access提供功能参数化的查询,这些查询和Access表格可以被诸如VB6和.NET的其它程序通过DAO或ADO访问。在Access中,VBA能够通过ADO访问参数化的存储过程。与一般的CS关系型数据库管理不同,Access不执行数据库触发,预存程序或交互式登录操作。Access 2010包括了嵌入ACE数据引擎的表级触发和预存程序,在Access 2010中,表格,查询,图表,报表和宏在基于网络的应用上能够进行分别开发。Access 2010 与MicrosoftSharePoint 2010 的集成也得到了很大改善。2.3 ADO 对象概述ADO对象能够存取到数据库的内容,首先要求数据库的驱动程序( ODBC驱动程序与OLE DB驱动程序)必须安装上,否则,ADO对象是无法存取数据库中内容,其原理示意图如下图所示:客户端客户端客户端ADO对象各种数据库所对应的驱动程序各种数据库(如Access、SQL Server以及Oracle等)请注意:上图中的“各种数据库所对应的驱动程序”即ODBC驱动程序与OLE DB驱动程序。2.3.1 利用ADO开发网络数据库应用程序ADO(Active Date Objects,即ActiveX数据对象)是一个ASP内置的ActiveX服务器组件(ActiveX Server Component)。可把它与ASP结合起来,建立提供数据库信息的网页内容,对数据库进行查询、插入、更新、删除等操作,并可以把在用户端实现“网上实时更新显示”的最新Web数据库技术。要执行ADO,服务器端必须安装Windows NT Server 和Internet Information Server(IIS),而客户端只要有IE或NETSCAPE较新版本的浏览器即可。利用ADO开发网络数据库应用程序有以下几个优点:1)、支持客户机/服务器结构(Client/Server)与Web系统开发技术。2)、内部有多个互相独立的对象模型。3)、支持分批修改数据库内容。4)、支持多种不同的数据控制指标形式。5)、先进的Recordset数据高速缓存管理功能。6)、允许在程序中使用多个Recordset对象或者多个分批修改区块传送。7)、ADO属于Free_threaded对象,利用它可以开发出更有效的Web应用程序。2.3.2 ADO组件的主要对象及其功能ADO组件又称为数据库访问组件,它提供了以下七种对象:1)、Connection对象:提供对数据库的连接服务。2)、Command对象:定义对数据库源操作的命令。3)、Recordset对象:由数据库服务器所返回的记录集。Recordset对象的LockType属性的设置值如下表所示:常量值说明adLockReadOnly1默认值,只读。无法更改数据adLockPressimistic2保守式记录锁定(逐条)。提供者执行必要的操作确保成功编辑记录,通常采用立即锁定数据源的记录的方式。adLockOptimistic3开放式记录锁定(逐条)。提供者使用开放式锁定,只在调用Updata方法时锁定记录。adLockBatchOptimistic4开放式批更新。用于与立即更新模式相反的批更新模式。4)、Fields对象:由数据库服务器所返回的单一数据字段5)、Parametes对象:表示Command对象的参数。6)、Property对象:单独的一个Property对象,提供属性功能。7)、Error对象:提供处理错误的功能。使用ADO对象可以建立和管理数据库的连接,按数据库服务器的要求获得数据,执行更新、删除、添加数据等操作,获取ODBC的错误信息等。2.3.3 用来操控数据的SQL命令SQL命令是发送给数据库并要求数据库操作的指令,它是专门为数据库设计的语言,比一般的计算机程序语言简单的多。SQL命令主要分成两部分:DDL(Data Definition Language)和DML(Data Manipulation Language),其中DDL是建立数据表及数据列的指令群,而DML则是操作数据库记录的指令群,如数据库记录的添加、更新、删除、和查询等。SQL命令,包括Select、Delete、Update、Insert Into、Select Into等。1)、筛选及排序记录的Select指令基本句型一:Select 字段串列 From 数据表基本句型二:Select From Where 筛选条件基本句型三:Select From Order By字段串列Select Top:限定选取数据的条数2)、删除数据记录的Delete指令基本语法:Delete From 数据表 Where 条件式3)、更新数据记录的Update指令基本语法:Update 数据表Set 表达式4)、增加数据记录的Insert Into 指令基本句型一:Insert Into 数据表 (字段串列) Values (字段串列)基本句型二:Insert Into 数据表 (字段1,字段2,字段n) Select 5)、建立新数据表的Select Into 指令该指令与“Insert Into Select ”指令的区别是,这个指令将建立另一个新的数据表,而Insert Into是增加数据记录到“现存的”数据表中。2.4 VB访问数据库过程1)、定义数据库组件Dim conn As New ADODB.Connection其中conn为连接对象Dim reco As New ADODB.Recordset 其中reco为结果集对象2)、打开数据库对于SQL数据库,其连接语句为conn.Open driver=sql server;server=localhost;uid=sa;pwd=;database=student。而对于Access数据库,连接语句为conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path + student.mdb3)、设定SQL语句,使用“Execute”命令,即可开始执行访问数据库的动作4)、关闭结果集对象,断开与数据库的连接reco.Closeconn.Close第二章 系统分析与设计3.1 系统功能分析首先用户可以从登录窗口登录,如果登录成功的话,将进入超市管理窗口,超市管理窗口里面有:综合管理,进货记录操作,出货记录操作,退出管理,关于。如果用户按“综合管理”,将进入“综合管理”窗体,按“进货记录操作”,将进入“进货记录操作”,可以将所进的货添加到进货表,如果按“出货记录操作”,可以对出售的货做一统计。3.2 系统结构图用户登录综合管理退出操作进货记录出货记录员工管理货物分类供应管理客户管理货物管理增加,删除,修改,结束增加3.3 系统E-R图1)、登录实体图如下图所示:用户用户名密码2)、客户实体图如下图所示:客户名称地址电话联系人产品单位数量3)、员工实体图如下图所示:员工姓名职务电话地址4)、供应商实体图如下图所示:供应商名称地址备注电话联系人级别3.4 数据库设计用access2010共建7个表,密码表,供应商表,货物分类表,客户表,员工表,进货记录表,出货记录表。1)、密码表:表结构如下表所示:2)、供应商表:表结构如下表所示:3)、货物分类表:表结构如下表所示:4)、客户表:表结构如下表所示:5)、员工表:表结构如下表所示:6)、进货记录表:表结构如下表所示:7)、出货记录表:表结构如下表所示:第三章 系统具体实现4.1 登录窗体设计代码如下:Private Sub Command1_Click()执行登陆过程Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql As String conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path & 库存管理1.mdb sql = Select * from 密码表 where If Trim(Text1.Text) = Then 如果用户名为空 MsgBox 用户名不能为空!, vbOKOnly + vbCritical, 错误 Text1.SetFocus End If If Trim(Text1.Text) = And Trim(Text2.Text) = Then 如果用户名和密码都为空 MsgBox 用户名和密码不能为空!, vbOKOnly + vbCritical, 错误 Text2.SetFocus Exit Sub End If If Trim(Text2.Text) = Then 如果密码为奥空 MsgBox 密码不能为空!, vbOKOnly + vbCritical, 错误 Text2.SetFocus Exit Sub End If sql = sql + 用户名= & Text1.Text & sql = sql + AND 密码= & Text2.Text & rs.Open sql, conn, 1, 1If rs.RecordCount = 1 Then MDIFrmMain.Show FrmMain.Hide End Ifrs.CloseSet rs = Nothingconn.CloseSet conn = NothingEnd SubPrivate Sub Data1_Validate(Action As Integer, Save As Integer)End SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Text2_Change()Text2.PasswordChar = *End Sub4.2 综合管理窗体设计代码如下:Private Sub Command1_Click(Index As Integer)Adodc1.Recordset.AddNewEnd SubPrivate Sub Command12_Click()EndEnd SubPrivate Sub Command13_Click()Adodc3.Recordset.AddNewEnd SubPrivate Sub Command14_Click()Adodc3.Recordset.DeleteAdodc3.Recordset.MoveNextEnd SubPrivate Sub Command15_Click()Adodc3.Recordset.UpdateEnd SubPrivate Sub Command18_Click()EndEnd SubPrivate Sub Command19_Click()Adodc4.Recordset.AddNewEnd SubPrivate Sub Command2_Click()Adodc1.Recordset.DeleteAdodc1.Recordset.MoveNextEnd SubPrivate Sub Command20_Click()Adodc4.Recordset.DeleteAdodc4.Recordset.MoveNextEnd SubPrivate Sub Command21_Click()Adodc4.Recordset.UpdateEnd SubPrivate Sub Command24_Click()EndEnd SubPrivate Sub Command25_Click()Adodc5.Recordset.AddNewEnd SubPrivate Sub Command26_Click()Adodc5.Recordset.DeleteAdodc5.Recordset.MoveNextEnd SubPrivate Sub Command27_Click()Adodc5.Recordset.UpdateEnd SubPrivate Sub Command3_Click()Adodc1.Recordset.UpdateEnd SubPrivate Sub Command30_Click()EndEnd SubPrivate Sub Command6_Click()EndEnd SubPrivate Sub Command7_Click()Adodc2.Recordset.AddNewEnd SubPrivate Sub Command8_Click()Adodc2.Recordset.DeleteAdodc2.Recordset.MoveNextEnd SubPrivate Sub Command9_Click()Adodc2.Recordset.UpdateEnd SubPrivate Sub Form_Load()Combo1.AddItem 员工Combo1.AddItem 经理Combo1.AddItem 采购Combo1.AddItem 库管Combo2.AddItem 1Combo2.AddItem 2Combo2.AddItem 3Combo2.AddItem 4Combo2.AddItem 5End Sub4.3进货记录操作窗体设计代码如下:Private Sub Command1_Click()Adodc5.Recordset.AddNewEnd SubPrivate Sub Command2_Click()EndEnd Sub4.4出货记录操作窗体设计代码如下:Private Sub Command1_Click()Adodc1.Recordset.AddNewAdodc5.Recordset.AddNewAdodc3.Recordset.AddNewEnd SubPrivate Sub Command2_Click()EndEnd Sub第四章 系统的运行与维护1.数据库的转储和恢复数据库的转储和恢复是系统

温馨提示

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

评论

0/150

提交评论