乐于分享
好东西不私藏

第6天实战:VBA数据库编程,让Excel成为数据管理高手

第6天实战:VBA数据库编程,让Excel成为数据管理高手

小张看着Excel中的员工信息表,突然想到:“老王,我们的数据都在Excel里,但公司实际用的是数据库,如果能让Excel直接读取数据库就好了!”

老王笑着回答:“问得好!这就是今天要学的——VBA数据库编程。让Excel不仅能处理表格,还能成为专业的数据管理工具。”
“数据库编程?听起来很高深啊!”小张有点担心。
“别担心,今天我从零开始教你,只要会Excel,就能学会数据库操作。”老王打开了VBA编辑器。

01 准备工作:添加数据库引用

第一步:添加ADO引用
ADO(ActiveX Data Objects)是VBA连接数据库的核心技术。
按 Alt + F11打开VBA编辑器
点击菜单栏:工具 → 引用
勾选"Microsoft ActiveX Data Objects 6.1 Library"
第二步:检查引用是否成功
Sub 检查数据库引用()OnErrorResumeNextDim 引用 AsObjectForEach 引用 In ThisWorkbook.VBProject.ReferencesIf 引用.Name = "ADODB"ThenMsgBox "✅ ADO引用已成功添加!", vbInformationExitSubEndIfNextMsgBox "请先添加ADO引用:" & vbCrLf & _"1. 工具 → 引用" & vbCrLf & _"2. 勾选 Microsoft ActiveX Data Objects 6.1 Library", vbExclamationEndSub

02 连接Access数据库(最常用)

基础连接代码
' 连接到Access数据库Sub 连接Access数据库()OnErrorGoTo 错误处理' 1. 创建连接对象Dim 连接 AsObjectSet 连接 = CreateObject("ADODB.Connection")' 2. 连接字符串(修改为你的数据库路径)Dim 数据库路径 AsString数据库路径 = ThisWorkbook.Path & "\员工数据库.accdb"Dim 连接字符串 AsString连接字符串 = "Provider=Microsoft.ACE.OLEDB.12.0;" & _"Data Source=" & 数据库路径 & ";" & _"Persist Security Info=False;"' 3. 打开连接连接.Open 连接字符串' 4. 测试连接MsgBox "✅ 数据库连接成功!" & vbCrLf & _"数据库位置:" & 数据库路径, vbInformation' 5. 关闭连接连接.CloseSet 连接 = NothingExitSub错误处理:MsgBox "❌ 连接失败:" & Err.Description, vbCriticalEndSub
如果还没有数据库,可以这样创建
' 创建示例数据库结构Sub 创建示例数据库()' 注意:Access数据库不能通过VBA代码直接创建' 需要先有一个.accdb或.mdb文件Dim 数据库路径 AsString数据库路径 = ThisWorkbook.Path & "\员工数据库.accdb"' 检查数据库文件是否存在If Dir(数据库路径) = ""ThenMsgBox "请先创建Access数据库文件:" & vbCrLf & _"1. 在文件夹中新建一个空白Access数据库" & vbCrLf & _"2. 命名为:员工数据库.accdb" & vbCrLf & _"3. 重新运行此程序", vbExclamationExitSubEndIfMsgBox "数据库文件已找到:" & 数据库路径, vbInformationEndSub

03 基础操作:增删改查(CRUD)

1. 查询数据(Read)
'从数据库读取数据到Excel
Sub 读取员工数据()OnErrorGoTo 错误处理' 1. 连接数据库Dim 连接 AsObject, 记录集 AsObjectSet 连接 = CreateObject("ADODB.Connection")Set 记录集 = CreateObject("ADODB.Recordset")Dim 连接字符串 AsString连接字符串 = "Provider=Microsoft.ACE.OLEDB.12.0;" & _"Data Source=" & ThisWorkbook.Path & "\员工数据库.accdb;"连接.Open 连接字符串2. 执行SQL查询Dim SQL语句 AsStringSQL语句 = "SELECT 员工编号, 姓名, 部门, 职位, 入职日期 FROM 员工表"记录集.Open SQL语句, 连接' 3. 检查是否有数据If 记录集.EOF ThenMsgBox "数据库中没有数据!", vbInformationGoTo 清理退出EndIf4. 将数据写入ExcelDim ws As WorksheetSet ws = ThisWorkbook.Sheets("员工数据")' 清空旧数据ws.Cells.Clear' 写入标题Dim 字段数量 AsInteger字段数量 = 记录集.Fields.CountDim i AsIntegerFor i = 0To 字段数量 - 1ws.Cells(1, i + 1).Value = 记录集.Fields(i).NameNext i' 设置标题格式With ws.Range(ws.Cells(1, 1), ws.Cells(1, 字段数量)).Font.Bold = True.Interior.Color = RGB(31, 78, 120).Font.Color = RGB(255, 255, 255)EndWith' 写入数据Dim 行号 AsLong行号 = 2记录集.MoveFirstDoWhileNot 记录集.EOFFor i = 0To 字段数量 - 1ws.Cells(行号, i + 1).Value = 记录集.Fields(i).ValueNext i行号 = 行号 + 1记录集.MoveNextLoop' 自动调整列宽ws.Columns.AutoFitMsgBox "✅ 成功读取 " & (行号 - 2) & " 条员工记录!", vbInformation清理退出:5. 关闭连接记录集.Close连接.CloseSet 记录集 = NothingSet 连接 = NothingExitSub错误处理:MsgBox "读取数据失败:" & Err.Description, vbCriticalGoTo 清理退出EndSub
2. 插入数据(Create)
插入新员工数据
Sub 插入员工数据()OnErrorGoTo 错误处理' 1. 获取用户输入(这里用输入框,实际中可以来自Excel单元格)Dim 姓名 AsString, 部门 AsString, 职位 AsString姓名 = InputBox("请输入员工姓名:""新增员工")If 姓名 = ""ThenExitSub部门 = InputBox("请输入部门:""新增员工")职位 = InputBox("请输入职位:""新增员工")' 2. 连接数据库Dim 连接 AsObjectSet 连接 = CreateObject("ADODB.Connection")Dim 连接字符串 AsString连接字符串 = "Provider=Microsoft.ACE.OLEDB.12.0;" & _"Data Source=" & ThisWorkbook.Path & "\员工数据库.accdb;"连接.Open 连接字符串' 3. 构建SQL插入语句Dim SQL语句 AsStringSQL语句 = "INSERT INTO 员工表 (姓名, 部门, 职位, 入职日期) " & _"VALUES ('" & 姓名 & "', '" & 部门 & "', '" & 职位 & "', #" & Date & "#)"' 4. 执行插入连接.Execute SQL语句' 5. 检查影响的行数MsgBox "✅ 员工 " & 姓名 & " 已成功添加到数据库!", vbInformation' 6. 刷新Excel数据Call 读取员工数据清理退出:' 7. 关闭连接IfNot 连接 IsNothingThen连接.CloseSet 连接 = NothingEndIfExitSub错误处理:MsgBox "插入数据失败:" & Err.Description, vbCriticalGoTo 清理退出EndSub
3. 更新数据(Update)
更新员工信息
Sub 更新员工数据()OnErrorGoTo 错误处理' 1. 选择要更新的员工Dim 员工编号 AsString员工编号 = InputBox("请输入要更新的员工编号:""更新员工信息")If 员工编号 = ""ThenExitSub' 2. 获取新信息Dim 新部门 AsString, 新职位 AsString新部门 = InputBox("请输入新部门:""更新员工信息")新职位 = InputBox("请输入新职位:""更新员工信息")' 3. 连接数据库Dim 连接 AsObjectSet 连接 = CreateObject("ADODB.Connection")Dim 连接字符串 AsString连接字符串 = "Provider=Microsoft.ACE.OLEDB.12.0;" & _"Data Source=" & ThisWorkbook.Path & "\员工数据库.accdb;"连接.Open 连接字符串' 4. 构建SQL更新语句Dim SQL语句 AsStringSQL语句 = "UPDATE 员工表 SET " & _"部门 = '" & 新部门 & "', " & _"职位 = '" & 新职位 & "' " & _"WHERE 员工编号 = '" & 员工编号 & "'"' 5. 执行更新连接.Execute SQL语句MsgBox "✅ 员工 " & 员工编号 & " 的信息已更新!", vbInformation' 6. 刷新数据Call 读取员工数据清理退出:' 7. 关闭连接IfNot 连接 IsNothingThen连接.CloseSet 连接 = NothingEndIfExitSub错误处理:MsgBox "更新数据失败:" & Err.Description, vbCriticalGoTo 清理退出EndSub
4. 删除数据(Delete)
 删除员工记录
Sub 删除员工数据()OnErrorGoTo 错误处理' 1. 获取要删除的员工编号Dim 员工编号 AsString员工编号 = InputBox("请输入要删除的员工编号:""删除员工")If 员工编号 = ""ThenExitSub' 2. 确认删除If MsgBox("确定要删除员工 " & 员工编号 & " 吗?", vbYesNo + vbQuestion, "确认删除") = vbNo ThenExitSubEndIf' 3. 连接数据库Dim 连接 AsObjectSet 连接 = CreateObject("ADODB.Connection")Dim 连接字符串 AsString连接字符串 = "Provider=Microsoft.ACE.OLEDB.12.0;" & _"Data Source=" & ThisWorkbook.Path & "\员工数据库.accdb;"连接.Open 连接字符串' 4. 构建SQL删除语句Dim SQL语句 AsStringSQL语句 = "DELETE FROM 员工表 WHERE 员工编号 = '" & 员工编号 & "'"' 5. 执行删除连接.Execute SQL语句MsgBox "✅ 员工 " & 员工编号 & " 已从数据库删除!", vbInformation' 6. 刷新数据Call 读取员工数据清理退出:' 7. 关闭连接IfNot 连接 IsNothingThen连接.CloseSet 连接 = NothingEndIfExitSub错误处理:MsgBox "删除数据失败:" & Err.Description, vbCriticalGoTo 清理退出EndSub

04 实战:创建员工信息管理系统

完整的系统代码
员工信息管理系统
OptionExplicit' 全局连接对象Public 数据库连接 AsObject' 初始化系统Sub 初始化系统()OnErrorGoTo 错误处理' 检查数据库文件Dim 数据库路径 AsString数据库路径 = ThisWorkbook.Path & "\员工数据库.accdb"If Dir(数据库路径) = ""ThenMsgBox "找不到数据库文件:" & 数据库路径 & vbCrLf & _"请确保员工数据库.accdb文件存在。", vbExclamationExitSubEndIf' 连接数据库Set 数据库连接 = CreateObject("ADODB.Connection")Dim 连接字符串 AsString连接字符串 = "Provider=Microsoft.ACE.OLEDB.12.0;" & _"Data Source=" & 数据库路径 & ";"数据库连接.Open 连接字符串MsgBox "✅ 系统初始化成功!", vbInformation' 加载数据Call 加载所有数据ExitSub错误处理:MsgBox "系统初始化失败:" & Err.Description, vbCriticalEndSub' 加载所有数据到ExcelSub 加载所有数据()OnErrorGoTo 错误处理If 数据库连接 IsNothingThenMsgBox "请先初始化系统!", vbExclamationExitSubEndIf' 1. 查询员工数据Dim 记录集 AsObjectSet 记录集 = CreateObject("ADODB.Recordset")Dim SQL语句 AsStringSQL语句 = "SELECT * FROM 员工表 ORDER BY 部门, 姓名"记录集.Open SQL语句, 数据库连接' 2. 写入ExcelDim ws As WorksheetSet ws = ThisWorkbook.Sheets("员工管理")' 清空旧数据ws.Cells.Clear' 写入标题Dim 字段数量 AsInteger字段数量 = 记录集.Fields.CountDim i AsIntegerFor i = 0To 字段数量 - 1ws.Cells(1, i + 1).Value = 记录集.Fields(i).NameNext i' 写入数据Dim 行号 AsLong行号 = 2IfNot 记录集.EOF Then记录集.MoveFirstDoWhileNot 记录集.EOFFor i = 0To 字段数量 - 1ws.Cells(行号, i + 1).Value = 记录集.Fields(i).ValueNext i行号 = 行号 + 1记录集.MoveNextLoopEndIf' 格式化表格With ws.UsedRange.Borders.LineStyle = xlContinuous.Borders.Color = RGB(200, 200, 200).HorizontalAlignment = xlCenterEndWithws.Columns.AutoFit' 3. 添加部门统计Call 添加部门统计' 4. 添加操作按钮Call 添加操作按钮记录集.CloseSet 记录集 = NothingExitSub错误处理:MsgBox "加载数据失败:" & Err.Description, vbCriticalEndSub' 添加部门统计Sub 添加部门统计()OnErrorGoTo 错误处理Dim 记录集 AsObjectSet 记录集 = CreateObject("ADODB.Recordset")Dim SQL语句 AsStringSQL语句 = "SELECT 部门, COUNT(*) AS 人数 FROM 员工表 GROUP BY 部门 ORDER BY 人数 DESC"记录集.Open SQL语句, 数据库连接Dim ws As WorksheetSet ws = ThisWorkbook.Sheets("部门统计")ws.Cells.Clear' 写入标题ws.Range("A1").Value = "部门"ws.Range("B1").Value = "人数"Dim 行号 AsLong行号 = 2IfNot 记录集.EOF Then记录集.MoveFirstDoWhileNot 记录集.EOFws.Cells(行号, 1).Value = 记录集.Fields("部门").Valuews.Cells(行号, 2).Value = 记录集.Fields("人数").Value行号 = 行号 + 1记录集.MoveNextLoopEndIf' 创建图表Dim 图表 As ChartObjectSet 图表 = ws.ChartObjects.Add(Left:=300, Width:=400, Top:=50, Height:=250)With 图表.Chart.ChartType = xlColumnClustered.SetSourceData Source:=ws.Range("A1:B" & 行号 - 1).HasTitle = True.ChartTitle.Text = "各部门人数统计".Axes(xlCategory).HasTitle = True.Axes(xlCategory).AxisTitle.Text = "部门".Axes(xlValue).HasTitle = True.Axes(xlValue).AxisTitle.Text = "人数"EndWith记录集.CloseSet 记录集 = NothingExitSub错误处理:MsgBox "添加统计失败:" & Err.Description, vbCriticalEndSub' 添加操作按钮Sub 添加操作按钮()Dim ws As WorksheetSet ws = ThisWorkbook.Sheets("员工管理")' 清除旧按钮OnErrorResumeNextws.Buttons.DeleteOnErrorGoTo0' 添加刷新按钮Dim 按钮 As ButtonSet 按钮 = ws.Buttons.Add(10, 10, 80, 30)With 按钮.Caption = "刷新数据".OnAction = "加载所有数据"EndWith' 添加新增按钮Set 按钮 = ws.Buttons.Add(100, 10, 80, 30)With 按钮.Caption = "新增员工".OnAction = "快速新增员工"EndWith' 添加搜索框ws.Range("L1").Value = "搜索员工:"ws.Range("M1").Value = ""EndSub' 快速新增员工Sub 快速新增员工()' 使用简单输入框Dim 姓名 AsString, 部门 AsString, 职位 AsString姓名 = InputBox("请输入员工姓名:""新增员工")If 姓名 = ""ThenExitSub部门 = InputBox("请输入部门:""新增员工")职位 = InputBox("请输入职位:""新增员工")' 插入数据库OnErrorGoTo 错误处理Dim SQL语句 AsStringSQL语句 = "INSERT INTO 员工表 (姓名, 部门, 职位, 入职日期) " & _"VALUES ('" & 姓名 & "', '" & 部门 & "', '" & 职位 & "', #" & Date & "#)"数据库连接.Execute SQL语句MsgBox "✅ 员工 " & 姓名 & " 添加成功!", vbInformation' 刷新数据Call 加载所有数据ExitSub错误处理:MsgBox "添加失败:" & Err.Description, vbCriticalEndSub' 搜索员工Sub 搜索员工()Dim 搜索关键词 AsString搜索关键词 = ThisWorkbook.Sheets("员工管理").Range("M1").ValueIf 搜索关键词 = ""ThenCall 加载所有数据ExitSubEndIfOnErrorGoTo 错误处理Dim 记录集 AsObjectSet 记录集 = CreateObject("ADODB.Recordset")Dim SQL语句 AsStringSQL语句 = "SELECT * FROM 员工表 " & _"WHERE 姓名 LIKE '%" & 搜索关键词 & "%' " & _"OR 部门 LIKE '%" & 搜索关键词 & "%' " & _"OR 职位 LIKE '%" & 搜索关键词 & "%' " & _"ORDER BY 部门, 姓名"记录集.Open SQL语句, 数据库连接' 写入ExcelDim ws As WorksheetSet ws = ThisWorkbook.Sheets("员工管理")ws.Cells.Clear' 写入标题Dim 字段数量 AsInteger字段数量 = 记录集.Fields.CountDim i AsIntegerFor i = 0To 字段数量 - 1ws.Cells(1, i + 1).Value = 记录集.Fields(i).NameNext i' 写入数据Dim 行号 AsLong行号 = 2IfNot 记录集.EOF Then记录集.MoveFirstDoWhileNot 记录集.EOFFor i = 0To 字段数量 - 1ws.Cells(行号, i + 1).Value = 记录集.Fields(i).ValueNext i行号 = 行号 + 1记录集.MoveNextLoopEndIfws.Columns.AutoFit记录集.CloseSet 记录集 = NothingMsgBox "找到 " & (行号 - 2) & " 条匹配记录", vbInformationExitSub错误处理:MsgBox "搜索失败:" & Err.Description, vbCriticalEndSub' 导出为Excel文件Sub 导出数据()OnErrorGoTo 错误处理Dim 导出路径 AsString导出路径 = ThisWorkbook.Path & "\员工数据_" & Format(Date, "yyyymmdd") & ".xlsx"' 创建新工作簿Dim 新工作簿 As WorkbookSet 新工作簿 = Workbooks.Add' 复制数据ThisWorkbook.Sheets("员工管理").Copy Before:=新工作簿.Sheets(1)ThisWorkbook.Sheets("部门统计").Copy Before:=新工作簿.Sheets(1)' 删除默认工作表Application.DisplayAlerts = FalseDoWhile 新工作簿.Sheets.Count > 2新工作簿.Sheets(3).DeleteLoopApplication.DisplayAlerts = True' 保存新工作簿.SaveAs 导出路径新工作簿.CloseMsgBox "✅ 数据已导出到:" & vbCrLf & 导出路径, vbInformationExitSub错误处理:MsgBox "导出失败:" & Err.Description, vbCriticalEndSub' 关闭系统Sub 关闭系统()OnErrorResumeNextIfNot 数据库连接 IsNothingThenIf 数据库连接.State = 1Then数据库连接.CloseEndIfSet 数据库连接 = NothingEndIfMsgBox "✅ 系统已安全关闭!", vbInformationEndSub

05 创建快捷操作界面

 创建简单的主界面
Sub 显示主界面()    ' 在Excel中创建一个简单的控制面板Dim ws As WorksheetSet ws = ThisWorkbook.Sheets("控制面板")' 如果不存在,创建新工作表    If ws Is Nothing Then        Set ws = ThisWorkbook.Sheets.Add        ws.Name = "控制面板"    End If    ws.Cells.Clear    ' 创建标题With ws.Range("A1").Value= "员工信息管理系统".Font.Size =18.Font.Bold =True.Font.Color = RGB(31, 78, 120)EndWith' 创建功能区域    ws.Range("A3").Value = "系统功能:"    ws.Range("A3").Font.Bold = True    ' 功能列表Dim 功能列表 As Variant功能列表 =Array("1. 初始化系统""2. 加载所有数据""3. 新增员工", _"4. 搜索员工""5. 导出数据""6. 关闭系统")Dim i As LongFor i =0To UBound(功能列表)ws.Cells(4+ i, 1).Value= 功能列表(i)Next i' 操作说明    ws.Range("A12").Value = "操作说明:"    ws.Range("A12").Font.Bold = True    ws.Range("A13").Value = "1. 首次使用请先点击'初始化系统'"    ws.Range("A14").Value = "2. 然后点击'加载所有数据'查看数据"    ws.Range("A15").Value = "3. 在'员工管理'工作表中操作数据"    ' 添加按钮Call 添加控制面板按钮' 激活此工作表    ws.Activate    MsgBox "✅ 系统主界面已创建!" & vbCrLf & _           "请在'控制面板'工作表中操作系统。", vbInformationEnd Sub' 添加控制面板按钮Sub 添加控制面板按钮()Dim ws As WorksheetSet ws = ThisWorkbook.Sheets("控制面板")' 清除旧按钮    On Error Resume Next    ws.Buttons.Delete    On Error GoTo 0    ' 初始化系统按钮Dim 按钮 As ButtonSet 按钮 = ws.Buttons.Add(Left:=ws.Range("C4").Left, _Top:=ws.Range("C4").Top, _Width:=100, Height:=30)With 按钮.Caption = "初始化系统".OnAction = "初始化系统"EndWith' 加载数据按钮    Set 按钮 = ws.Buttons.Add(Left:=ws.Range("C5").Left, _                              Top:=ws.Range("C5").Top, _                              Width:=100, Height:=30)    With 按钮        .Caption = "加载数据"        .OnAction = "加载所有数据"    End With    ' 新增员工按钮Set 按钮 = ws.Buttons.Add(Left:=ws.Range("C6").Left, _Top:=ws.Range("C6").Top, _Width:=100, Height:=30)With 按钮.Caption = "新增员工".OnAction = "快速新增员工"EndWith' 导出数据按钮    Set 按钮 = ws.Buttons.Add(Left:=ws.Range("C8").Left, _                              Top:=ws.Range("C8").Top, _                              Width:=100, Height:=30)    With 按钮        .Caption = "导出数据"        .OnAction = "导出数据"    End With    ' 关闭系统按钮Set 按钮 = ws.Buttons.Add(Left:=ws.Range("C9").Left, _Top:=ws.Range("C9").Top, _Width:=100, Height:=30)With 按钮.Caption = "关闭系统".OnAction = "关闭系统"EndWithEnd Sub

06 快速开始指南

第一步:准备数据库
在Excel文件所在文件夹中,创建Access数据库文件
将文件命名为:员工数据库.accdb
在Access中创建表结构:
CREATE TABLE 员工表 (员工编号 AUTOINCREMENT PRIMARY KEY,姓名 TEXT(50),部门 TEXT(50),职位 TEXT(50),入职日期 DATE,联系电话 TEXT(20))
第二步:运行系统
启动系统的主程序
Sub 启动员工管理系统()' 显示欢迎信息MsgBox "欢迎使用员工信息管理系统!" & vbCrLf & _"这是一个基于Excel和Access的数据库管理系统。", vbInformation' 创建控制面板Call 显示主界面EndSub
第三步:使用系统
在Excel中按 Alt+F8,选择"启动员工管理系统"
按照控制面板的提示操作
所有数据会自动保存到Access数据库

07 常见问题解决

问题1:找不到数据库文件
错误信息:运行时错误 '-2147467259 (80004005)'
解决方案
Sub 修复数据库路径()Dim 数据库路径 AsString数据库路径 = ThisWorkbook.Path & "\员工数据库.accdb"MsgBox "数据库应该放在:" & vbCrLf & 数据库路径, vbInformation' 检查文件是否存在If Dir(数据库路径) = ""ThenIf MsgBox("找不到数据库文件,是否创建示例数据库?", vbYesNo) = vbYes Then' 创建示例数据库Call 创建示例数据库EndIfElseMsgBox "✅ 数据库文件已找到!", vbInformationEndIfEndSub
问题2:表不存在
错误信息:运行时错误 '-2147217865 (80040e37)'
解决方案
Sub 检查表结构()' 在Access中手动创建表MsgBox "请在Access中创建以下表结构:" & vbCrLf & vbCrLf & _"表名:员工表" & vbCrLf & _"字段:" & vbCrLf & _"  员工编号 - 自动编号(主键)" & vbCrLf & _"  姓名 - 文本(50)" & vbCrLf & _"  部门 - 文本(50)" & vbCrLf & _"  职位 - 文本(50)" & vbCrLf & _"  入职日期 - 日期/时间" & vbCrLf & _"  联系电话 - 文本(20)", vbInformationEndSub
问题3:无法写入数据
错误信息:运行时错误 '-2147467259 (80004005)'
解决方案
Sub 检查数据库权限()Dim 数据库路径 AsString数据库路径 = ThisWorkbook.Path & "\员工数据库.accdb"' 检查文件是否只读If GetAttr(数据库路径) And vbReadOnly ThenMsgBox "数据库文件是只读的!" & vbCrLf & _"请右键点击文件 → 属性 → 取消'只读'", vbExclamationElseMsgBox "✅ 数据库文件有写入权限", vbInformationEndIfEndSub

今日总结

你学会了:
连接数据库- 使用ADO连接Access数据库
基本操作- 增删改查(CRUD)操作
数据展示- 将数据库数据显示在Excel中
完整系统- 创建了一个员工信息管理系统
错误处理- 解决常见的数据库问题
核心代码回顾:
连接数据库- 连接.Open 连接字符串
查询数据- 记录集.Open SQL语句, 连接
插入数据- 连接.Execute "INSERT INTO ..."
更新数据- 连接.Execute "UPDATE ..."
删除数据- 连接.Execute "DELETE FROM ..."
下一步学习:
明天我们将学习VBA与Web API的交互,让Excel能够:
🔄 获取实时天气、汇率、股票数据
📧 自动发送电子邮件
🌐 调用网页API接口
🔌 与各种在线服务集成

记住:数据库是信息系统的核心,掌握了数据库编程,你的Excel技能就达到了专业水平。明天,我们将让Excel连接更广阔的世界!
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-09 18:58:13 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/596698.html
  2. 运行时间 : 0.120053s [ 吞吐率:8.33req/s ] 内存消耗:4,705.48kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=1457aa69de7bc3bbd1edc2c734e838ae
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000592s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000765s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000393s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000299s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000572s ]
  6. SELECT * FROM `set` [ RunTime:0.000229s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000590s ]
  8. SELECT * FROM `article` WHERE `id` = 596698 LIMIT 1 [ RunTime:0.000475s ]
  9. UPDATE `article` SET `lasttime` = 1778324293 WHERE `id` = 596698 [ RunTime:0.003066s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000305s ]
  11. SELECT * FROM `article` WHERE `id` < 596698 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000501s ]
  12. SELECT * FROM `article` WHERE `id` > 596698 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000381s ]
  13. SELECT * FROM `article` WHERE `id` < 596698 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001316s ]
  14. SELECT * FROM `article` WHERE `id` < 596698 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.005757s ]
  15. SELECT * FROM `article` WHERE `id` < 596698 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.019159s ]
0.121832s