《工资管理系统毕业设计(论文).doc》由会员分享,可在线阅读,更多相关《工资管理系统毕业设计(论文).doc(31页珍藏版)》请在三一办公上搜索。
1、目 录摘 要1第一章 开发软件简介82.1 Visual Basic 6.0简介82.2 Access简介102.3 开发工具的使用112.3.1 Visual Basic的使用及安装步骤122.3.2 数据库:Microsoft Access132.3.3 数据库访问方式:ADO12第三章 数据库应用系统开发133.1数据库管理系统143.2数据库模式143.3数据库信息管理系统分析14第二章 系统设计与概要分析154.1系统概要设计思路164.2系统结构图和功能结构图174.3运行设计184.4数据库设计194.5数据库表格设计19第三章 系统部分代码与分析设计205.1系统应用程序设计2
2、15.2用户密码认证窗体的的实现215.3系统各功能的实现及一些故障解析24第四章 参考文献33工资管理系统摘 要企业的工资管理是公司管理的一个重要内容。随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。工资管理既涉及到企业劳动人事的管理,同时也是企业财务管理的重要组成部分。工资管理需要和人事管理相联系,同时连接工时考勤、奖惩、津贴和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人
3、员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。企业工资管理系统是典型的信息管理系统(MIS),前台程序开发工具采用微软的VISUAL BASIC,后台数据库采用ACCESS数据库。VISUAL BASIC是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。 ACCESS数据库具有与VISUAL BASIC无缝连接、操作简单、易于使用的优点。运行结果证明,它成为了现代化企业管理的标志。关键词
4、:工资管理 信息管理 数据查询 数据库 VISUAL BASIC ACCESS第一章 开发软件简介2.1 VISUAL BASIC 6.0简介Visual Basic 6.0 是用来创建高性能的企业应用及基于 Web 的应用程序的最有效工具。集成进来的可视化数据库工具和一个 RAD(快速应用开发)环境能提高生产效率,而自然代码编译则能生成运行速度更快的应用程序。 使用集成在 Visual Basic 6.0 里的可视化数据库工具和新的数据环境设计器(Data Environment Designer)可视化地设计 Oracle 和 Microsoft SQL Server 数据库,创建可重用的
5、数据查询语句、过程这些都不必离开 Visual Basic 环境。 创建在任何一个装有 Visual Basic 6.0 Web 类库的平台上使用任何一个浏览器都可轻松地访问的服务器方 Web 应用程序。使用新的动态 HTML 页面设计器编制高交互性的 Web 页面象编制 Visual Basic 表格一样轻松。 使用下列工具可获得组开发特性和可调节性:Microsoft Visual SourceSafe 6.0 工程元素管理器、Visual Modeler、 Microsoft SQL 服务器 6.5 开发版 、 Microsoft 事务服务器、 Microsoft Internet 信息
6、服务器和 Microsoft 消息队列服务器。一. Visual Basic 6.0有以下特点:1.可视化Visual Basic 是可视化编程的先驱和典范,Visual的英文含义就是可视性。实际上,Visual Basic所展现出来的可视性风格,已经成为了诸多可视化集成开发工具的参照标准。可视化环境下创作前端界面就如同做拼图游戏那样简单,Visual Basic 之所以成为Windows环境下快捷、便利的前端开发工具,并获得最广泛的用户群体支持,其所具有的高度智能的人性化可视开发环境起了很大的作用。2.面向对象 面向对象编程(OOP)诞生于20世纪80年代初期,并先期在Small Talk、
7、C+等程序设计语言中实现,随着面向对象编程方法的成熟,它所具有的优越性愈趋明显,于是被渐渐引入到各种传统高级编程语言中,自然也被嵌入到了Visual Basic 中。 面向对象编程是建立在类模块基础上的,并通过类的封装、继承、多态性获得代码重用。和C+相比,Visual Basic 6.0的面向对象特性是不够完全的,它缺少类的继承性,因此依靠类获得代码重用在Visual Basic 6.0中受到了一定程度的限制。尽管如此,通过类来构造应用系统,则仍是Visual Basic 6.0最有效的手段,这个特点尤其体现在它所具有的基于部件的编程方法上。3.部件编程基于部件的编程方法是分布式构架思想体系
8、的具体化。在Visual Basic 中进行部件编程是通过微软的部件对象模型(COM,Component Object Model)实现的。COM是建立在二进制标准上的对象模型,其具有通用性。因此,在Visual Basic 中创建的部件,可以自用,也可以在其他开发环境中(如Visual C+)使用,同时Visual Basic 也可以引用由其他开发工具建立的部件。由于COM建立的是基于二进制标准的对象,并具有接口继承性,因此可以通过部件编程,而使用Visual Basic 6.0所缺乏的对类的继承特性有所弥补。4.事件驱动 基于事件编程是通过Visual Basic 创建软件系统时的最主要手
9、段之一。事件概念是面向对象方法中,外界操作对象由一种状态过度到另一种状态时,对象对外界的感应接口。基于事件驱动的编程方法体现在:程序的执行是依靠系统能够被识别的触发事件启动的。用户操作、系统消息,以及程序等各种因素都可能触发事件。当对象由一种状态过渡到另一种状态时,可能会发生许多个与时间相关的有序事件,而事件顺序又将决定着代码执行顺序,因此,基于事件驱动编写程序也就成为了根据有待解决的问题性质合理安排事件和根据事件顺序有效地组织程序。2.2 ACCESS简介建立一个数据库我们有多种选择,现在市场上有各种各样的数据库,而且每一种数据库都有其自身的特点,不能说哪一种更好,只能在其中寻找一种能更好地
10、适应系统需求、更好地满足用户的要求以及适应开发人员的习惯。在本系统中,做为图书仓库管理系统是一个比较小的应用系统,它所产生和处理的数据量也比较小。因此,没有必要使用像SQL Server和Oracle这样的大型数据库。我首先想到的数据库是Borland公司的Paradox数据库。另外,Microsoft Office中的Access数据库在计算机上的应用比较普及,是开发小型数据库系统的比较理想的选择,所以,在本系统中我选择了Access数据库。Access做为一个数据库管理系统,它被集成在Microsoft Office中。Access数据库处理的基本结构,采取关系型数据库模式。与其他的数据库
11、系统相比,Access更加简单易学,一个普通的计算机用户可以很快地掌握它。Access 2000的功能十分强大,利用它可以方便地实现对信息保存、维护、查询、统计、打印、交流、发布,而且它可以十分方便地与Office其他组件交流数据,这些功能对一个一般用户而言已经足够了。数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是一串文字或数字流。数据库中的数据可以是文字、图象、声音等。Microsoft Access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。图1是一
12、个“产品”表的例子。“产品”表由10个记录组成,一个记录占一行,每一个记录由产品ID、产品名称、库存量、订货量、单价和折扣率6个字段组成。“产品ID”是字段名,其下面的1,2等是字段的值。表与表之间可以建立关系,以便查询相关联的信息。Access数据库以文件形式保存,文件的扩展名是MDB。2.3 开发工具的使用一.Visual Basic 6.0 的使用及安装步骤:Visual Basic是微软推出的基于窗口的可视化开发工具。其中,Visual 所指的是开发图形拥护界面(GUI,Graphical User Interface)的可视化方法。无需编写大量原代码去描叙用户界面元素的外观位置,而只
13、要把预先建立好的控件对象用鼠标拖入到设计窗体上,这就是可视化方法带来的便利。BASIC是微软最早期的传统产品,Visual Basic继承了BASIC最显著的简单、易用的特色。但是,Visual Basic却又和传统BASIC有着本质的区别,主要表现在可视化、面向对象、部件编程、时间驱动等方面。Visual Basic是Windows 环境下最快捷、便利的通用开发工具之一,且有只能特性集成开发环境,拥有广泛的拥护群。1Visual Basic 6.0安装方便快捷易于操作。(1) 启动安装程序。通过 Windows的“控制面板添加删除程序”、“资源管理器”、“我的电脑”运行Visual Basi
14、c 6.0安装光盘上的Setup.exe程序。(2) 输入CD号。在安装过程中,安装程序会要求输入CD号,它是安装口令,用户可以从软件商提供的资料找到该CD号。(3) 输入姓名及用户单位。在安装过程中系统会要求用户输入姓名和用户单位。可以在“姓名”输入框中输入用户的姓名,在“单位”输入框中输入工作单位。单击安装程序界面上“确定”按钮继续安装。(4) 安装路径的选择。安装程序允许选择安装路径。通过单击安装程序界面上的“更改文件夹”按钮,可以设置安装路径。三.安装方法的选择。Visual Basic 6.0提供“典型安装”和“自定义安装”两种方式:(1)典型安装:在这种安装方式中,Visual B
15、asic 6.0的所有文件都将安装到硬盘上。(2)自定义安装:按用户的要求安装所要求安装所需要的Visual Basic 6.0组件。Visual Basic 6.0经过磁盘空间检查后,开始进行安装。在安装过程中会提示用户是否要安装大量的联机手册,如果有很充足的硬盘空间,建议安装这些文件。安装程序最后会要求重新启动计算机,并完成安装过程。二. 数据库:Microsoft AccessAccess是关系数据库开发的工具,数据库能汇集各种信息以查询、存储和检索。Access的优点在于它能使用数据表示图提供了一种类似于Excel的电子表格,可以是数据一目了然。另外,Access允许创建自定义报表用于
16、打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。Access 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。Access 多用于中小型企业来设计中小型数据库,一般的学校教务系统的数据库用Access 来设计完全能达到要求。由于考虑到本系统是应用在单机系统上,只建立起一个数据库。三. 数据库访问方式: ADOADO(Active Data Objects)实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口。可以使用任何一种ODBC数据源,即
17、不止适合于SQL Server、Oracle、Access 等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。其主要优点是易于使用、高速度、低内存支出和占用磁盘空间较少。第二章 数据库应用系统开发在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构,开发数据库应用程序的步骤,开发体系及方法都应当有相当清晰的了解和认识。数据应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转
18、变为实际的数据库,并且这些数据库带有功能完备,高效能的应用。数据库技术在计算机软件领域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较完善的理论体系和一大批实用系统。并且,近年来,随着World Wide Web(WWW)的猛增及Internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。3.1数据库管理系统数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分。对数据库的一切操作,包括定义,更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,可以把DBMS看成是某种数据模型在计算机
19、系统上的具体实现。根据数据模型的不同,DBMS可以分成层次型,网状型,关系型,面向对象型等。MS SQL Serever2000就是一种关系型数据库管理系统。关系模型。关系模型主要是用二维表格结构表达实体集,用外键表示实体间联系。 关系模型是由若干个关系模型式组成的集合。关系模式是相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。关系模型和层次,网状模型的最大判别是用关键码而不是用指针导航数据。SQL语言是关系数据库的标准化语言,已得到了广泛的应用。 设计子系统有一个方便数据库及其应用创建的工具集。它典型地包含产生表,窗体,查询和报表的工具。DBMS产品还提供编程语言和
20、对编程语言的接口。运行子系统处理用设计子系统开发的应用组建。它所包含的运行处理器用来处理窗体和数据库的数据交互,以及回答查询和打印报表等。3.2 数据库模式数据库模式定义了数据库的结构,表,关系,域和业务规则。数据库模型是一种设计,数据库和应用正是建立在此基础上的。域是一列可能拥有的值的集合。必须为每一个表的每一列确定域。除了数据的物理格式外,还需要确定是否有些域对表来说是唯一的。数据库模式的最后一个要素是业务规则,它是对需要反映在数据库和数据库应用程序中的业务活动的约束。业务规则是模式的一个重要部分,因为他们指定可无论什么数据变化到达DBMS引擎,允许的数据值必须满足的约束。不管无效的数据变
21、化请求是来自窗体的用户,查询/修改请求还是应用程序,DBMS都应该拒绝。3.3 数据库信息管理系统分析信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就是必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速,方便,准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类,分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当,正确反映数据关系,数据 余少,存取效率高,
22、能满足多种查询要求的数据模型。关系数据结构的建立:在进行了数据基本结构的规范化重组以后,还必须建立整个数据的关系结构。这一步设计完成后数据库和书记结构设计工作基本完成只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化的数据库系统结构就建立起来了。建立关系数据结构涉及三方面内容:确定关联的关键指标项并建立关联表;确定单一的父系记录结构:建立整个数据库的关系结构。第三章 系统设计与概要分析4.1 系统设计思路在软件需求分析阶段,搞清楚了软件“做什么的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么的逻辑模型变换为“怎么做的物理模型,即着手实现软
23、件的需求。首先,我们需要描述的是系统的总的体系结构。系统的概要设计中最重要的就是系统的模块化。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,提高模块的独立性,为设计高质量的软件结构奠定基础。我首先将整个系统化分为几个小问题,小模块,进一步细分模块,添加细节。比如:工资管理系
24、统分为工资系统管理模块、工资输入模块、工资查询模块和系统维护模块等。一个基本的工资管理系统有利于对工资进行方便的录入、查询、显示等,不但可以提高工作效率,还可以提高单位人员的积极性,增强单位的活力。平时在工资的统计和发放中难免会出现一些差错,既浪费人力又不能很好的提高计算的准确性。而工资的发放又有较强的时间限制。开发工资管理系统,用计算机来统计和计算工资,可以避免了许多人工发放时工资的差错,不仅可以保证计算的准确性,还可以对各种信息进行统计。其主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种工资信息的统计工作。针对系统服务对象的具体要求,设
25、计了本工资管理系统。通过对用户需求的分析,我们可以分析出工资管理系统大致可以分为4个模块:登录模块,工资输入模块,工资查询模块,系统维护模块。结构与功能模块如下:4.2.工资管理系统结构图与功能结构图一. 工资管理系统结构图工资管理系统系统管理输入模块查询模块维护模块本工资管理系统主要有以下几大功能:(1) 可对人员的工资进行修改、录入、删除。(2) 查询功能。要求即可以按照一定的查询方式进行,比如按照车间,科室,姓名,工号等基本信息来进行查询。(3) 系统登录管理方便安全,采用了账号密码,防止了信息的泄漏。(4) 维护性大大提高了,有利于工作人员随时快捷的对本系统进行维护和删改措施。二.工资
26、管理系统功能结构图工资管理系统系统管理用户管理退出系统输入模块员工基本信息员工照片信息员工奖惩情况查询模块按工号查询按姓名查询按车间科室号查询维护模块员工信息维护员工信息删除本工资管理系统功能结构模块的特点:(1) 本工资管理系统的登录状态大大提高了其系统的安全运行,以防人们可以随意的更改信息,用户只能通过帐号密码来登录本工资管理系统。(2) 由管理信息系统的父模块的向后延伸成几个具有各自间独立功能的子模块甚至子模块下的二级模块,具有易辨认性、准确性、高效性可观性等。(3) 系统管理模块下的用户管理和退出系统模块既让用户清楚的了解整个系统的设计,又能够在第一时间内退出登录,节省了时间。(4)
27、当进入输入模块时候,用户可以清晰的知道自己想要如何根据自己的需要来查询到自己想要查询的员工信息以及该员工的奖惩情况。(5) 当用户找到该确定员工时,可依照其工号、姓名、以及车间或科室号来进行查询其工资等信息情况。(6) 最后进入到管理员的维护模块了.此模块的设计都依据着以员工为本的思想,对员工的基本信息包括其工资、奖惩、照片及信息等基本情况,有效的时时保护着整个系统的稳定运行,如发生需要变动或者删除、添加及更改的,管理员能够对其系统进行相应的维护措施,有效的避免了信息的错误及做好安全性的防范。4.3 运行设计(1) 运行模块的单独运行具体软件的单独运行模块为程序提供了良好的运行环境,使其不易在
28、查询信息的时候发生错误以及发生系统冗余,各个模块在软件运行过程中能较好的查询信息,处理数据等。 (2) 运行控制 软件运行时有较友好的界面,基本能够实现用户的数据信息处理要求。4.4 数据库设计数据库设计属于系统设计的范畴。通常把使用数据库的系统统称为数据库应用系统,把数据库应用系统的设计简称为数据库设计。按照软件工程对系统生命周期的定义,软件生命周期分为指定计划、需求分析、设计、程序编制、测试以及运行维护6个阶段。在数据库设计中也参照这种划分,把数据库应用系统的生命周期分为数据库规划、需求收集与分析、数据库设计与应用程序设计、实现、测试以及运行维护6个阶段。在信息世界中,信息从客观事物出发流
29、经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。4.5 数据库表格设计我在系统中定义的表格都基本地按照范式的思想和要求去完成,数据是用ACCESS2003,系统中所有数据都存放在data.mdb中,定义了
30、如下几张表格,分别是accounts系统用户表、车间信息表、科室工资信息表、奖惩信息表、基本工资信息表、员工信息表、工号信息表、通过对这几张表格的操作可以较好地完成系统设计的各项功能,几张表格之间有着不同程度的联系。下面列出一些制作的表格分析。一.admin表字段名称数据类型说明id数字登陆编号username文本登录名password数字密码typeid数字登陆次数二.员工信息表字段名称数据类型说明Id数字员工编号Number数字工号realname文本真实姓名age数字年龄sex文本性别room文本车间 pic 文本员工照片 gongzi 数字 员工工资 buzhu 数字 补助三.奖惩信息
31、表字段名称数据类型说明userid文本用户名字title文本标题type文本奖惩类型money数字奖惩金额body文本奖惩情况第四章 系统部分代码和分析设计5.1系统应用程序设计各功能细节的总体分析:1. 整个系统内的主要功能是添加,删除,修改。虽然从功能上看来比较简单但它们必须受到严格的制约。添加:不能添加已经存在或者关键字相同的数据删除:由于许多数据是互相关联的如:没有员工的基本信息,哪来员工的基本工资?所以在删除此类数据的时候一定要注意。修改:同样的,不能修改成已经存在或者关键字相同的数据。有许多数据必须加以规范。比如说年龄和公司对福利的承担比例。2. 公司对福利的承担也不可能是100%
32、,一般在015%左右。奖金的发放不能单纯的在部门内人数平分,这很可能要和他日常表现要有关联,所以每个人在最后工资发放阶段必须要可以单独修改的可能。5.2用户认证系统密码窗体的实现本窗体是为了让工作人员按照用户和密码进行登陆。窗体界面、源代码如下:源代码:If username.Text = Or password.Text = Then MsgBox 没有输入用户名,请输入!, vbOKOnly + vbExclamation, 警告 username.SetFocusElse On Error Resume Next Dim sql Dim rs As New ADODB.Recordset
33、 SQL查询语句,从管理员表中查询匹配用户名和密码的记录 sql = select * from admins where username= & username.Text & and password1= & password.Text & rs.Open sql, conn, 1, 1 If Err.number 0 Then 错误捕捉,判断SQL语句是否出错 MsgBox Err.Description End If If rs.EOF Then MsgBox 没有这个用户,请重新输入用户名!, vbOKOnly + vbExclamation, 警告 username.SetFocu
34、s password.Text = Else username1 = rs(username) username1为全局变量,用来标识管理员登录的标识 conn.Close main.Show Unload Me End If使用方法与功能介绍:用户名、密码不得随意输入,用户信息必须是已经存在与系统数据库中的,如果输入了错误的用户名或密码系统将提示你重新输入。如下图所示:如果输入正确将进入系统主界面。主界面如下图所示:界面上有基础信息(里面包括:系统管理、数据添加、信息查询、信息维护)、用户管理(里面包括:用户管理、密码修改、退出登陆)数据添加(里面包括:员工信息、员工照片、奖惩情况)、信息维
35、护(里面包括:员工信息、奖惩情况)、还有员工信息、工资调整、基本工资、奖惩调整、几个小选项,你可根据你所要进行的事物来选择你所需要的功能。(1).当进入者不是管理员身份时,我做了如下的设置:例如这是员工的帐号密码,进入后只能进行相关密码修改和系统退出,却不能进行查询等模块的功能的浏览。5.3系统各功能实现Dim rs As New ADODB.Recordset 判断新添加的用户是否已经存在,如果存在,给出提示 sql = select * from admins where username= & Text1.Text & rs.Open sql, conn, 1, 1 If rs.Reco
36、rdCount 0 Then 记录存在,提示,关闭对象,退出模块 MsgBox 此用户名已经存在 rs.Close conn.Close Exit Sub Else rs.Clone 执行SQL语句插入指令 insert into sql = insert into admins(username,password1) values( & Text1.Text & , & Text2.Text & ) conn.Execute sql MsgBox 添加成功Dim rs As New ADODB.Recordsetsql = select * from usersrs.Open sql, co
37、nn, 1, 3If Err.number 0 Then MsgBox Err.Description rs.Close conn.Close Exit SubEnd Ifrs.AddNew 将数据插入到数据表中rs(number) = number.Textrs(realname) = realname.Textrs(room) = room.Textrs(age) = age.Textrs(gongzi) = gongzi.Textrs(buzhu) = qita.TextIf sex(0).Value = True Then rs(sex) = sex(0).CaptionElse rs
38、(sex) = sex(1).CaptionEnd Ifrs.Updaters.Closedia1.ShowOpen 显示对话框控件appa = dia1.FileNameFor i = Len(appa) To 1 Step -1 If Mid(appa, i, 1) Then 从通用对话框返回的图片文件路径最右侧开始向左挨个字符进行判断,如果是“”,则获得“”后面的字符串,即为图片文件名 j = j + 1 Else strimage = Mid(appa, Len(appa) - j + 1, j) 获得图片文件名,放到strimage变量中 Exit For End IfNext iI
39、f appa Thenappb = dia1.FileTitle 文件名称num = InStrRev(strimage, .)str1 = Right(strimage, Len(strimage) - num)str2 = Replace(Now, -, )str2 = Replace(str2, ., )str2 = Replace(str2, , )str2 = Replace(str2, :, ) 获取图片后缀名FileName = str2 & . & str1file1 = uploadImage & FileNameCommand2.Enabled = TrueFileCopy
40、 appa, App.Path & uploadImage & FileName 将图片复制到指定路径Image1.Picture = LoadPicture(App.Path & uploadImage & FileName)End IfChDrive Left(App.Path, 1)ChDir App.PathCall conDim rs As New ADODB.Recordsetsql = select * from user_jcrs.Open sql, conn, 1, 3rs.AddNew 添加记录,将数据插入数据库rs(userid) = Combo2.Textrs(type
41、) = Combo1.Textrs(title) = Text1.Textrs(money) = Text2.Textrs(body) = Text3.Textrs.UpdateIf Err.number 0 Then 判断金额是否为数字,如果不为数字,则程序出错,捕捉错误 MsgBox 发生错误,请正确录入金额 Text2.SetFocus rs.Close conn.Close Exit SubEnd Ifrs.Closeconn.CloseMsgBox 添加成功Dim rs As New ADODB.Recordsetsql = select * from users where num
42、ber like % & Text1.Text & % and realname like % & Text2.Text & % and room like % & Text3.Text & %此句SQL查询语句Adodc1.RecordSource = sqlAdodc1.RefreshSet DataGrid1.DataSource = Adodc1On Error Resume NextIf id.Text = Then MsgBox 请选择要修改的记录 Exit SubEnd IfCall conDim rs As New ADODB.Recordsetsql = select * f
43、rom user_jc where id= & id.Text SQL查询语句,与ID字段匹配的记录修改指定记录rs.Open sql, conn, 1, 3rs(title) = title.Textrs(userid) = realname.Textrs(type) = Combo1.Textrs(money) = jine.Textrs(body) = beizhu.Textrs.UpdateIf Err.number 0 Then MsgBox 请填写正确的金额 jine.SetFocus rs.Close conn.Close Exit SubEnd Ifrs.Closeconn.C
44、loseCommand3.Enabled=TrueMe.Adodc1.RecordSource=select*fromuserswhereid=&DataGrid1.Rowid.Text=Me.Adodc1.Recordset.Fields(id)number.Text=Me.Adodc1.Recordset.Fields(number)realname.Text=Me.Adodc1.Recordset.Fields(realname)Combo1.Text=Me.Adodc1.Recordset.Fields(sex)age.Text=Me.Adodc1.Recordset.Fields(age)IfIsNull(Me.Adodc1.Recordset.Fields(room)Thenroom.Text=Elseroom.Text=Me.Adodc1.Recordset.Fields(room)EndIfgongzi.Text=Me.Adodc1.Recordset.Fields(gongzi)qita.Text=Me.Adodc1.Recordset.Fields(buzhu)IfIsNull(Me.Adodc1.Recordset.Fields(pic)ThenImage1.Picture=LoadPicture(A