网站首页 > 技术文章 正文
前端数据库只包含一个窗体,窗体中输入查询的员工号,可以从后端数据库获取该员工信息,返回到前端窗体显示
后端数据库用于存储数据,当前存储查询的表【员工表】,可以设置数据库打开密码,保证前后端分离数据的安全性。
代码中使用ADO对象前需要设置ADO引用,勾选ADO对象引用
代码及注释
Option Compare Database
Private Sub Command查询_Click()
' 当点击查询按钮时,触发该子过程
If Me.员工号 <> "" Then
' 如果表单中的员工号字段不为空,继续执行后续代码
Call 获取员工信息(Me.员工号)
Else
' 否则(员工号为空)
MsgBox "请输入查询的员工号"
' 弹出提示信息,要求用户输入员工号
Exit Sub
' 退出子过程
End If
End Sub
Sub 获取员工信息(ByVal yg_num As String)
' 定义用于获取员工信息的子过程
On Error GoTo 查询失败错误
' 设置错误处理程序,当发生错误时跳转到“查询失败错误”标签处
Dim db_pathname As String '定义变量存储路径
db_pathname = "C:\Users\liang\Desktop\前后端示例\后端.accdb"
' 定义数据库文件的路径
Dim search_conn As New ADODB.Connection
' 创建一个新的数据库连接对象
Dim search_rs As New ADODB.Recordset
' 创建一个新的记录集对象
With search_conn
.Provider = "microsoft.ace.oledb.12.0;Jet OLEDB:Database Password='aaa123'"
' 设置数据库提供程序为 Access,并指定数据库密码
.ConnectionString = db_pathname
' 设置数据库的连接字符串为数据库文件路径
.Open
' 打开数据库连接
End With
Dim search_sql As String
' 定义一个字符串变量,用于存储查询 SQL 语句
search_sql = "Select * From 员工表 Where 员工号='" & yg_num & "'"
' 构建 SQL 查询语句,根据表单中的员工号字段查询员工表的对应记录
search_rs.Open search_sql, search_conn, adOpenDynamic, adLockOptimistic
' 打开记录集,执行查询,并设置记录集的打开方式和锁定类型
If search_rs.EOF = False Then
' 如果记录集的指针不在末尾(表示查询返回了记录)
员工号.Value = search_rs!员工号.Value
' 将查询结果的员工号字段值赋给表单中的员工号控件
姓名.Value = search_rs!姓名.Value
' 将查询结果的姓名字段值赋给表单中的姓名控件
性别.Value = search_rs!性别.Value
' 将查询结果的性别字段值赋给表单中的性别控件
部门.Value = search_rs!部门.Value
' 将查询结果的部门字段值赋给表单中的部门控件
职位.Value = search_rs!职位.Value
' 将查询结果的职位字段值赋给表单中的职位控件
联系方式.Value = search_rs!联系方式.Value
' 将查询结果的联系方式字段值赋给表单中的联系方式控件
工资.Value = search_rs!工资.Value
' 将查询结果的工资字段值赋给表单中的工资控件
Else
' 如果记录集的指针在末尾(表示查询未返回记录)
姓名.Value = ""
' 清空表单中的姓名控件
性别.Value = ""
' 清空表单中的性别控件
部门.Value = ""
' 清空表单中的部门控件
职位.Value = ""
' 清空表单中的职位控件
联系方式.Value = ""
' 清空表单中的联系方式控件
工资.Value = ""
' 清空表单中的工资控件
MsgBox "未找到对应员工信息"
' 弹出提示信息,告知用户未找到对应员工信息
End If
search_rs.Close
' 关闭记录集
Set search_rs = Nothing
' 释放记录集对象
search_conn.Close
' 关闭数据库连接
Set search_conn = Nothing
' 释放数据库连接对象
Exit Sub
' 退出子过程
查询失败错误:
' 错误处理代码块
MsgBox Err.Description
' 弹出错误信息,显示错误的详细描述
End Sub
猜你喜欢
- 2025-02-04 联科云创申请优化Web页面字体文件大小专利,降低前端加载性能消耗
- 2025-02-04 独立开发者产品日刊:AI视频编辑器、代码搜索工具、Figma 插件
- 2025-02-04 IM客服系统(2)活用用户体验要素进行前端设计
- 2025-02-04 TaskBuilder客户端请求前端静态文件的流程
- 2025-02-04 盘点13个优秀前端测试开源框架大全
- 2025-02-04 梳理React常考面试题很全面(react面试题2024)
- 2025-02-04 2023年前端开发者需要掌握的技术和框架有哪些?
- 2025-02-04 Node.js 是怎么找到模块的?(nodejs自带模块)
- 2025-02-04 2020年Javascript 前端框架google搜索排名
- 2025-02-04 树形结构!别再用递归实现了这才是最佳的方案;更快更强更好用
你 发表评论:
欢迎- 572℃几个Oracle空值处理函数 oracle处理null值的函数
- 569℃Oracle分析函数之Lag和Lead()使用
- 554℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 550℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 549℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 540℃【数据统计分析】详解Oracle分组函数之CUBE
- 529℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 523℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)