JSJ06-135@VB人才管理系统(源代码+论文)
收藏
资源目录
压缩包内文档预览:(预览前20页/共37页)
编号:508391
类型:共享资源
大小:1.50MB
格式:ZIP
上传时间:2015-11-10
上传人:QQ28****1120
认证信息
个人认证
孙**(实名认证)
辽宁
IP属地:辽宁
12
积分
- 关 键 词:
-
毕业设计论文
- 资源描述:
-
JSJ06-135@VB人才管理系统(源代码+论文),毕业设计论文
- 内容简介:
-
1 目 录 前言 2 第一章 系统描述 3 1.1 开发工具 3 1.2 系统开发环境 5 第二章 数据库设计 7 2.1 数据库需求分析 7 2.2 数据库结构的实现 8 第三章 系 统总体设计 10 3.1 系统功能描述 10 3.2 数据流程分析 11 3.3 系统功能模块设计 11 第四章 系统详细设计 13 4.1 启动程序设计 13 4.2 用户登录设计 14 4.3 主 窗体界面的设计 19 4.4 技术人才管理窗体设计 21 4.5 管理人才管理窗体设计 34 4.6 关于系统窗体设计 36 第五章 系统的调试与注意事项 37 结束语 38 致谢 39 参考 文献 39 nts 2 前 言 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已经为人们深刻认识,他已经进入人类社会的各个领域,并发挥着越来越重要的作用。 作为新世纪的大学生,理应站在时代发展的前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会发展的要求。新世纪需要具有丰富现代科学知识、能够独立解决面临任务、充满激情、具有创新意识的新型人才。 二十一世纪什么最贵?是人才!现在我国的某些单位对人才的管理水平还停留在纸介质的基础上,这样的机 制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。在学校,我学习的是计算机专业,三年的专业知识学习,确实学到了不少东西,但是理论与实践是大不相同的,为了能够学以致用,同时也为了检验自己学习水平,所以我针对人才管理方面开发了一套实用的系统程序 。 在 作为计算机应用的一部分 ,使用计算机对人才信息进行管理 ,具有着手工管理所无法比拟的优点 .例如 :检索迅速、查找方便、可靠性高、存储量大、稳定性好、寿命长、成本低等。这些优点能够极大地方便人才信息的管理, 使的人才管理工作系统化、规范化、自动化,科学正规化,从而大大提高人才管理的效率。 这样既能发挥计算机在现实生活中的实用功能,方便人才的管理,及人才的基本信息,也检验了所学专业在生活中发挥的作用,体现出计算机的优越性。 编写系统程序时,我使用的是 VB 程序, Visual Basic 是一种可视化的面向对象和采用事件驱动方式的结构化高级程序设计语言,它效率高,功能强大,可与Windows 的专业开发工具 SDK 相媲美,可以高效、快速地开发出 Windows 环境下功能强大、图形界面丰富的应用软件系统。 由于这是初次编写, 难免会有不足之处,有幸得到了辅导老师的指点,帮助解决了不少的问题,使得系统能够及时地开发完成,然而在今后系统的应用当中,该程序还会在实际应用中不断完善,发挥本系统本应有的作用。 nts 3 第一章 系统描述 一、开发工具 本软件用 Visual Basic 6.0 开发系统。 Visual Basic 是一种可视化的,面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。它简单易学,效率高,且功能强大,可以与 Windows 的专业开发工具 SDK 相媲美。在 Visual Basic 环境 下,利用事件驱动的编制机制,新颖易用的可视化设计工具,使用 Windows 内部的应用程序接口( API)函数,以及动态链接库( DLL) ,动态数据交换( DDE),对象的链接与嵌入( OLE) ,开放式数据连接( ODBC)等技术,可以高效,快速地开发出 Windows 环境下功能强大,图形界面丰富的应用软件系统。 随着版本的提高, Visual Basic 的功能也越来越强。 5.0 版以后, Visual Basic推出了中文版,与以前各版相比,其功能有了质的飞跃,已忧为 32 位,全面支持面向对象的大型程序语言。在推出 6.0 版时, Visual Basic 又在数据访问,控件,语言,向导及 Internet 支持等方面增加了许多新的功能。 Visual Basic 有以下的主要特点: 1.可视化编程 在用传统在用传统程序设计语言来设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中去修改。有时候,这种编程 -编译 -修改的操作可能要反复多次,大大影响了软件开发效率。 Visual Basic 提供了可视化设计工具,把 Windows 界面设计的复杂性:“封 装”起来,开发人员不必为界面设计而编写大量程序代码,只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。 Visual Basic 自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。 nts 4 2. 面向对象的程序设计 4.0 版特别是 5.0 版以后的 Visual Basic 支持面向对象的程序设计,但它与一般的面向对象的程序设计语言( C+)不完全相同。在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽 象的概念;而 Visual Basic 则是应用面向对象的程序设计方法( OOP),把程序和数据封装起来作来一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上, Visual Basic 自动生成对象的程序代码封装起来。每个对象以图形方式显示在界面上,都是可视的。 3结构化程序设计语言 Visual Basic 是在 BASIC 和 Quick BASIC 语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方 式,其语句简单易懂:其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强且使用灵活的调试器和编译器。 Visual Basic 是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误,在设计 Visual Basic程序的过程中,随时可以运行程序,而在整个应用程序设计好之后,可以编译生成可执行的文件( .EXE) ,脱离 Visual Basic 环境,直接在 Windows 环境下运行。 4事件驱动编程机制 Visual Basic 通过事件来执行对象的操作 。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击”( Click)事件,而在产生该事件将执行一段程序,用来实现指定的操作。 在用 Visual Basic 设计大型应用软件时,不必建立具有明显开始和结束的程序 ,而是编写若干个微小的子程序,即过程,这些过程分别面向不同的对象,由用户操作引发某个事件来驱动执行某种特定的功能,或者由事件驱动程序调用通用来执行指定的操作。这样可以方便编程人员,提高效率。 nts 5 5访问数据库 Visual Basic 系统具有很强的数据库管理功能。利用数据控件和数据库管理窗口,可以直接建立或处理 Microsoft Access 格式的数据库,并提供了强大的数据存储和检索功能。同时, Visual Basic 还能直接编辑和访问其他外部数据库,如Btrieve,Dbase,Foxpro,Paradox 等,这些数据库格式都可以用 Visual Basic 编辑和处理。 Visual Basic 提供开放式数据连接( Open Database Connectivity) ,即 ODBC功能,它可通过直接访问或建立连接的方式使用并操作后台大型 网络数据库,如 SQL Server,Oracle 等。在应用程序中,可以使用结构化查询语言 SQL 数据标准,直接访问 Server 上的数据库的 SQL 的编程技术,为单机上运行的数据库提供了 SQL 网络接口,以便在分布式环境中快速而有效地实现客户服务器( Client/Server)方案。 以上介绍了 Visual Basic 的一些主要特性。除上述特性外, Visual Basic 还提供了其他一些功能,包括动态数据交换( DDE),对象的链接与嵌入( OLE) ,动态链接库( DLL) ,Internet 组件下载,建立自己的 ActiveX 控件, ActiveX 文档以及远程自动化工具直接支持远程操作, ActiveX 数据对象( ADO)和 ADO 数据控件,远程数据对象( RDO)和远程数据控件( RDC) ,并用有声明,触发,管理自定义事件的功能等。 Visual Basic 数据库应用程序有 3 个部分,即数据引擎,数据库和应用程序。 数据库引擎是数据库驱动程序,使用它,程序员可以用统一的格式访问各种数据库,不管这个数据库是本地的 Access 数据库,还是所支持的其他任何格式的数据库,其中所使用的数据访问对象和编程技术都是相同的。使用 VB 应用程序访问数据库时 , Jet 引擎被包含在一组动态链接库 DLL 文件中。运行时,这些文件被引用到VB 程序中, Jet 引擎将应用程序的请求翻译成对 .mdb(Access 文件后缀 )文件或其他数据库的物理操作。 Jet 引擎真正读取,写入和修改数据库,并处理所有内部的事务。 数据库是包含数据库表的一个或多个文件。对于本地 Access 数据库来说,就是 .mdb 文件。 二、 系统开发的环境 nts 6 1硬件环境: 主机: 586 及其以上的微机和兼容机; 内存:至少 32M; 硬盘自由空间:容量至少 1G, 数据所需空间视使用情况而定; 2软件配置 操作系统: Windows2000/xp 以上 数据库管理系统: Access 2000 设计语言: Visual Basic 6.0 nts 7 第二章 数据库设计 一、数据库需求分析 2.1.1: Access 数据库的特点 数据库是存储在计算机内,有组织,可共享的数据集合。数据库中的数据按一定的数据模型组织,描述和存储,具较小的数据冗余度,较高的数据独立性和可扩展性,并且数据库中的的数据可为各种合法用户共享。 Access 2000 是微软公司的 Microsoft Office 2000 系列软件中的一个重要组成部分。它是一个运行与 Windows 平台上的关系数据库管理系统,通过各种数据库对象对数据进行控制和管理。 2.1.2: Access 2000 的主要功能如下所述。 定义表,利用表存储相应的信息。 定义表之间的联系,利用表中相关的字段链接不同的表。 强大的数据处理能力。 创建 Web 页。 开发应用程序。 Access 2000 还提供了管理大量数据所需要的数据定义,数据操作和数据控制功能。 Access 2000 支持 ODBC(开放式数据库连接)特性,用户能够访问许多外部数 据库(如 Oracle 和 Sybase 等)的数据。 nts 8 二、数据库结构的实现 经过前面的需求分析以后,得到数据库的逻辑结构。现在就可以在 Access 数据库中创建数据表了。 2 2 1:创建数据库 在设计数据库表结构之前,首先要创建一个数据库。本系统使用的数据库为“人才信息 .mdb”。 2 2 2 设计表结构 数据库包括三张表:管理人才表,技术人才表,密码表。下面分别介绍这些表结构。 1密码表 编号 字段名称 数据类型 说明 1 用户名 文本 保存用户名,主键 2 密码 文本 保存用户密码 2管理人才表: 编号 字段名称 数据类型 说明 1 职工编号 文本 主键,必填字段 2 姓名 文本 必填字段 3 性别 文本 必填字段 4 国别 文本 5 民族 文本 6 年 数字 7 月 数字 8 日 数字 9 专业 文本 nts 9 10 身份证号 文本 11 婚姻状况 文本 12 文化程度 文本 13 政治面貌 文本 14 技术职称 文本 15 主要特长 文本 16 工作经历 备注 17 主要业绩 备注 3技术人才表: 编号 字段名称 数据类型 说明 1 职工编号 文本 主键, 必填字段 2 姓名 文本 必填字段 3 性别 文本 必填字段 4 民族 文本 5 年 数字 6 月 数字 7 日 数字 8 文化程度 文本 9 政治面貌 文本 10 技术职称 文本 11 主要特长 文本 12 工作经验 备注 13 主要研究成果 备注 nts 10 第三章、系统总体设计 一、系统功能描述 人才管理系统的基本功能是对企业、事业单位的组织机构和员工进行管理,本系统的主要功能如下: 1. 技术人才信息管理 添加技术人才信息,包括姓名、职工编号、性别、民族 、出生日期等信息、 修改技术人才信息 删除技术人才信息 查询技术人才信息 2. 管理人才信息管理 添加管理人才信息,包括姓名、职工编号、性别、民族、出生日期等信息 修改管理人才信息 删除管理人才信息 查询管理人才信息 3. 用户管理 添加新用户 修改用户密码 4. 系统管理 数据信息备份 退出系统 nts 11 二、数据流程分析 本系统只是一个对人才信息的储存和管理,数据流程简单。此时的数据流程如图所示。 数据流程图 三、系统功能模块设计 从功能描述的内容可以看到,本系统可以 实现五个完整的功能。根据这些功能,设计出的系统功能模块如图 2-1 所示。 每个功能模块都需要针对不同的表完成相同的数据库操作,即添加记录 ,修改记录 ,删除记录,及查询和显示记录。 录入 查询 删除 技术人才 管理人才 修改 nts 12 图 2-1 系统功能模块设计图 添加技术人才信息 修改技术人才信息 删除技术人才信息 查询技术人才信息 添加新用户 修改用户密码 修改管理人才信息 添加管理人才信息 删除管理人才信息 退出系统 数据库备份 系统管理 用户信息管理 人人 才才 管管 理理 系系 统统 技术人才信息管理 管理人才信息管理 查询管理人才信息 nts 13 第四章 系统详细设计 一、 启动程序设计 程序代码如下: Private Sub Timer1_Timer() If Label1.FontSize 工作界面的设计 nts 14 .用户登录的工作界面要放在启动界面上,但是不能破坏启动 界面的整体效果,为此设计用户登录的工作界面,如下图 4-1 所示。 图 4-1 用户登录窗体 这介界面的背景是启动界面的一部分 ,调用用户登录后在这个图片的原位置显示登录界面 ,这样启动界面的完整性得以保证 .由于这个用户登录界面上只有一个文本框 ,因此就不研究控件了。“请输入密码”这几个字是做在图上的 密码输入的程序设计 密码输入的一般操作为:( 1)输入密码,在输入密码时一般要隐藏密码 的真实字符;( 2)核对密码的正确性。 这里应注意,在密码输入法时应用其它字符代替密码字符,一般用“ *”号。核对密码的正确 性就是用预设密码和当前输入的密码进行比较,以判断密码输入的正确性,这里实际上是一个密码保存的问题。 密码保存的方便做法是将密码放在程序里,作为程序的组成部分,即在程序中安排一个固定的字符串作为密码,作为密码输入的字符串和这个固定的字符串做比较。如果密码正确程序继续运行,否则退出程序。这种做法最大问题是密码不能更换,一旦密码泄露也就无密可保。 将密码放在一个文件里,每次输入密码时从密码文件中读出密码,然后作密码输入是否正确的判断也是一个办法。使用文件保有存密码最大的好处是密码可以随时更换,如晨将密码加密后再存 入文件,那么即使知道文件中数据是密码,也不会知道真的密码组成。这种办法的最大缺陷是,一但密码文件损坏或被删除,程序就不能使用了。 nts 15 程序代码如下: Option Explicit Public LoginSucceeded As Boolean Dim connConnection As ADODB.Connection Dim rsRecordSet As ADODB.Recordset 检查正确的密码 Private Sub cmdOK_Click() Dim strConnect As String Dim strProvider As String Dim strDataSource As String Dim strDataBaseName As String strProvider = Provider= Microsoft.Jet.OLEDB.3.51; strDataSource = App.Path strDataBaseName = 人才信息 .mdb; strDataSource = Data Source= & strDataSource & _ strDataBaseName strConnect = strProvider & strDataSource Set connConnection = New ADODB.Connection connConnection.CursorLocation = adUseClient connConnection.Open strConnect Set rsRecordSet = New ADODB.Recordset account = txtUserName.Text pt = txtPassword.Text rsRecordSet.CursorType = adOpenStatic rsRecordSet.CursorLocation = adUseClient rsRecordSet.LockType = adLockPessimistic rsRecordSet.Source = select * from 密码表 where 用户名 = & txtUserName.Text & rsRecordSet.ActiveConnection = connConnection rsRecordSet.Open If (rsRecordSet.RecordCount = 0) Then MsgBox 无此用户名 , , 登录 Else If (rsRecordSet.Fields(密码 ).Value = Trim(txtPassword.Text) Then Form1.Show Me.Hide Else MsgBox 无效的密码,请重试 !, , 登录 txtPassword = txtPassword.SetFocus numlogin = numlogin + 1 If numlogin = 3 Then MsgBox 错误输入已达 3 次,系统退出! , vbOKOnly + vbExclamation, 警告 Unload Me Exit Sub End If End If End If connConnection.Close Set connConnection = Nothing End Sub Private Sub cmdCancel_Click() nts 16 设置全局变量为 false 不提示失败的登录 LoginSucceeded = False Unload Me End Sub 系统管理界面的设计 用户管理界面的窗体如图 -2 所示。 图 4-2 用户管理窗体 用户管理窗体设计的代码如下: Option Explicit Dim strque As String Dim strcon As String Dim stropen As String Dim strtext As String Private connConnection As ADODB.Connection Private rsRecordSet As ADODB.Recordset Private Sub Command3_Click() If Text5.Text = Then MsgBox 新密码为空! , vbOKOnly Exit Sub End If stropen = select * from 密码表 strtext = select * from 密码表 where 用户名 = & account & rsRecordSet.Source = strtext rsRecordSet.Open If rsRecordSet.RecordCount = 0 Then MsgBox 无此用户! , vbOKOnly Exit Sub Else If Text5.Text Text3.Text Then MsgBox 两次输入密码不同! , vbOKOnly Else rsRecordSet.AddNew rsRecordSet.Fields(0) = Text1.Text rsRecordSet.Fields(1) = Text2.Text rsRecordSet.Update MsgBox 用户添加成功! , vbOKOnly rsRecordSet.Close End If Else MsgBox 已有该用户! , vbOKOnly Text1.Text = Text1.SetFocus rsRecordSet.Close Exit Sub End If End Sub Private Sub Command2_Click() connConnection.Close Set connConnection = Nothing Unload Me Form1.Show End Sub Private Sub Command4_Click() connConnection.Close Set connConnection = Nothing Unload Me Form1.Show End Sub Private Sub Form_Load() nts 18 Dim strConnect As String Dim strProvider As String Dim strDataSource As String Dim strDataBaseName As String Dim pt As String strProvider = Provider= Microsoft.Jet.OLEDB.3.51; strDataSource = App.Path strDataBaseName = 人才信息 .mdb; strDataSource = Data Source= & strDataSource & _ strDataBaseName strConnect = strProvider & strDataSource Set connConnection = New ADODB.Connection connConnection.CursorLocation = adUseClient connConnection.Open strConnect Set rsRecordSet = New ADODB.Recordset rsRecordSet.CursorType = adOpenStatic rsRecordSet.CursorLocation = adUseClient rsRecordSet.LockType = adLockPessimistic rsRecordSet.ActiveConnection = connConnection End Sub 三、主窗体界面的设计 主窗体界面如图 -3 所示。 图 4-3 人才管理主窗体 主窗体界面的设计代码如下: Option Explicit API 函数声明 Private Declare Function PlaySound Lib winmm.dll Alias PlaySoundA (ByVal lpszName As nts 19 String, ByVal hModule As Long, ByVal dwflags As Long) As Long 常数声明 Dim hWndl As Long Dim flag As Integer Private Sub Quit() Unload Me End Sub Private Sub e_Click() Unload Me End Sub Private Sub Form_Load() End Sub Private Sub gy_Click() frmAbout.Show 1 End Sub Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key Case j Form7.Show 1 Case g Form3.Show 1 Case y Form12.Show 1 Case s Dim FileName1, FileName2 As String On Error GoTo A1 CommonDialog1.Filter = *.mdb|*.mdb CommonDialog1.ShowOpen FileName1 = CommonDialog1.FileName CommonDialog1.ShowSave FileName2 = CommonDialog1.FileName A1: If Err.Number = 75 Or Err.Number = 53 Then Exit Sub Else If Err.Number = 70 Then If FileName1 = FileName2 Then MsgBox 文件已经存在,请更改文件名 ! , vbOKOnly + vbExclamation Exit Sub Else Exit Sub End If Else FileCopy FileName1, FileName2 End If End If Case q frmAbout.Show 1 Case e Quit End Select End Sub nts 20 四、技术人才管理窗体设计 该窗体主要完成录入、删除、修改、查询技术人才管理功能的调用,如图 -4 所示。 图 4-4 技术人才菜 单 1当用户单击“录入”时,将调出“技术人才录入窗体” 完成技术人才信息保存。工作界面使用的控件,如表 4-3 所示,控件属性设置如表 4-4 所示。 控件设置 名称 作用 Datal 连接数据库 Command1 确认,转下一记录 Command2 清除当前录入数据,重新录入数据 Command3 保存录入数据,返回主菜单 Command4 返回,不保存数据 Combo1 文化程度预设值 Combo2 政治面貌预设 Combo3 技术职称预设值 Frme1 性别选择分组框 Label1 窗体 标题 Line1 分割线 Option1 “男”单选框 Option2 “女”单选框 StatusBar1 显示记录情况和当前日期时间 Text1 Text2 与拨尖人才数据表各字段绑定 表 4-4 工作界面窗体控件设置 nts 21 控件主要属性 控件名称 属性 值 Datal RecordSource 拔尖人才 Visible Fasle Combo1 DataField 文化程度 Combo2 DataField 政治面貌 Combo. DataField 技术职称 Text1 DataField 姓名 Text2 DataField 年 Text3 DataField 月 Text4 DataField 日 Text5 DataField 市(县) Text6 DataField 区 Text7 DataField 街 Text8 DataField 号 Text9 DataField 技术特长 Text10 DataField 何种奖励 Text11 DataField 科研成果 Multiline True Text12 DataField 性别 Visible False Text13 Enabled True Interval 1000(1 秒 ) 表 4-5 工作界面的各个控件属性设置 复选框和文本框的数据源均为 Datal。这里将 Text11 的 ”MultiLine”属性设为:“ True”是为了能输入多行文字。 数据录入的工作流程如图 4-6 所示。 nts 22 窗体装入 关闭关闭按钮 确定数据文件、激活数据源 得到记录总数、在状态栏显示记录总数和当前记录数及当前日期和时间 输入一条新记录 输入姓名 显示提示信息,等待输入姓名 回车键向下 输入姓名为空 等待按下回车键 选择性别 改变下一文本框的背景颜色并设置焦点,等待输入其他数据 各项数据输入完毕 下一记录按钮按下 重新录入按钮按下 保存数据按钮按下 返回按钮按下 保存当前录入的记录 清空所有输入数据 保存数据、返回主菜 返回主菜单、不保存数据 插入一新记录、等待数据输入 等待数据输入 nts 23 事件过程如表 -6 所示。 过程名 类型 执行条件 作用 Form_load 事件过程 装入窗体 调用关闭关闭按钮的函数过程关闭关闭按钮、设 置各控件的属性、连接数据库、插入一条新记录 Text1_KeyPress 事件过程 回车键按下 判断姓名是否为空,设置单选钮使能为真,设 Option1 值为真 Option1_Click 事件过程 Option1 单击 选择性别为“男”并赋值给 Text12 Option2_Click 事件过程 Option2 单击 选择性别为“女”并赋值给 Text12 Text2_KeyPress Text4_KeyPress 事件过程 回车键按下 分别输入“年”“月”“日”,判断输入数据的合法性,激活下一 控件 Combo1_ KeyPress Combo3_ KeyPress 事件过程 回车键按下 选择“文化程度”、“政治面貌”、“技术职称”,激活下一控件 Text5_KeyPress Text11_KeyPress 事件过程 回车键按下 继续输入其他各项数据,激活下一控件 Command1_Click 事件过程 鼠标单击 插入空记录,恢复各控件原属性设置 Command1_KeyPress 事件过程 回车键按下 插入空记录,恢复各控件原属性设置 Command2_Click 事件过程 鼠标单击 清空录入数据,恢复各控件原属性设置,重新输入 nts 24 Command3_Click 事件过程 鼠标单击 保存输入数据,返回工作选项 Command4_Click 事件过程 鼠标单击 取消数据输入操作,返回工作选项 Timer1_Timer 事件过程 定时时间到 更新当前时间 表 4-6 2技术人才信息查询 信息查询的工作界面与数据录入时使用的工作界面基本相同,只是多了一个输入姓名的文本框和一个显示“请输入姓名”的标签,如 4-7 图所示:本程序使用 Visual Basic 自身提供的 Find 查询的模糊 查询方法 。 图 4-7 技术人才信息查询工作界面 Private Sub Command1_Click() 查询记录 Set rsRecordSet2 = New ADODB.Recordset rsRecordSet2.ActiveConnection = connConnection strcon = select * from 技术人才表 where strtext = Text18.Text strque = strcon & 职工编号 = & strtext & If Text18 = Then MsgBox 请输入职工编号 ! , vbExclamation Text18 = Text18.SetFocus Exit Sub End If rsRecordSet2.Source = strque nts 25 rsRecordSet2.Open If rsRecordSet2.RecordCount = 0 Then MsgBox 没有找到要查询的信息 , vbOKOnly End If Call bind1 Command1.Enabled = False Command2.Enabled = False End Sub 因为这里是进行查询,这时数据应该只能显示不能修改,故需要将所有用于显示数据的文本框锁住,即除用于输入姓名的文本框“ Text17”外,将其他文本框的Locked 属性设置为 ”True”。在删除数据的程序中对文本框的 Locked 属性也作了相同的设定 。 3.技术信息 人才删除 在该窗体中对记录的删除方法是先查询后删除,工作界面如 4-8 图所示,工作时首先输入需要待删除人员的职工编号,然后计算机查找相应记录,在查到需要删除的记录后,单击“删除”按钮即可删除记录。 图 4-8 技术信息人才删除界面 代码段如下: Private Sub Command4_Click() If blquery Then blquery = False rsRecordSet2.Delete 删除查询后的记录 Else rsRecordSet.Delete 删除没有点击 查询 按钮时的的记录 End If nts 26 rsRecordSet.Close 关闭原来的记录集 strcon = select * from 技术人才表 rsRecordSet.Source = strcon rsRecordSet.LockType = adLockPessimistic rsRecordSet.Open 重新打开原来的记录集 Call bind Command4.Enabled = False Command2.Enabled = True Command3.Enabled = True End Sub 3技术人才信息的修改 数据修改的工作界面如 4-9 图所示 图 4-9 技术人才信息修改的工作界面 这个程序与数据查询不同之处是各文本框没有锁定,与数据录入的不同之处是不能输入新记录。这里不在细述。 程序清单如下: Option Explicit Dim strque As String Dim strcon As String Dim strtext As String Dim blquery As Boolean Dim bldatabase As Boolean Private WithEvents connConnection As ADODB.Connection Private WithEvents rsRecordSet As ADODB.Recordset Private WithEvents rsRecordSet2 As ADODB.Recordset Private Sub Command1_Click() blquery = True nts 27 Set rsRecordSet2 = New ADODB.Recordset rsRecordSet2.ActiveConnection = connConnection strcon = select * from 技术人才表 where strtext = Text18.Text strque = strcon & 职工编号 = & strtext & If Text18 = Then MsgBox 请输入职工编号 ! , vbExclamation Text18 = Text18.SetFocus Exit Sub End If rsRecordSet2.Source = strque rsRecordSet2.LockType = adLockPessimistic rsRecordSet2.Open Call bind1 If rsRecordSet2.RecordCount = 0 Then Command4.Enabled = False Command1.Enabled = False Command2.Enabled = False Command3.Enabled = False MsgBox 没有找到要查询的信息 , vbOKOnly Exit Sub End If Command1.Enabled = False Command2.Enabled = False Command3.Enabled = False Command4.Enabled = True End Sub Private Sub Command2_Click() If rsRecordSet.BOF = False Then rsRecordSet.MovePrevious Check to see if you are at the front of the record set. If you are not, then you can move forward. If rsRecordSet.BOF = True Then This will prevent the user from moving to the BOF marker if he or she is on the first record. rsRecordSet.MoveFirst End If Else If rsRecordSet.EOF Then Check to see if there is any data in the record set. MsgBox There is no data in the record set!, , Oops Else rsRecordSet.MoveFirst If the user is at the BOF marker, then move to the first record. There are several other ways to handle this. For example, you could loop the user to the last record by using rsRecordset.MoveLast after the else statement. End If End If Command4.Enabled = True nts 28 End Sub Private Sub Command3_Click() If rsRecordSet.EOF = False Then rsRecordSet.MoveNext If rsRecordSet.EOF Then rsRecordSet.MoveLast End If Else If rsRecordSet.BOF Then Check to see if there is any data in the recordset. MsgBox There is no data in the record set!, , Oops Else rsRecordSet.MoveLast End If End If Command4.Enabled = True End Sub Private Sub Command4_Click() If blquery Then Call bind1 rsRecordSet2.Update Else rsRecordSet.Update End If Command4.Enabled = False End Sub Private Sub Command5_Click() If bldatabase Then connConnection.Close Set connConnection = Nothing End If Unload Me Form7.Show End Sub Private Sub Form_Load() Dim strConnect As String Dim strProvider As String Dim strDataSource As String Dim strDataBaseName As String Dim pt As String strProvider = Provider= Microsoft.Jet.OLEDB.3.51; strDataSource = App.Path The data source becomes the directory that the p
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。