[VBA]access VBA检查DB连接状况及SQL执行结果的代码实例
时 间:2012-06-15 00:03:33
作 者:YEYE ID:26565 城市:北京
摘 要:[VBA]ACCESS VBA检查DB连接状况及SQL执行结果的代码实例
正 文:
【开发语言】
VBA
【功能简介】
f_Connection: 连接子处理,失败时返回False
f_ExecSelect: 执行SQL语句,失败时返回False
f_ErrorInfo:显示详细出错信息子处理
【代码实例】
Option Compare Database
Option Explicit
Dim adoCON As ADODB.Connection
Dim adoRS As ADODB.Recordset
Sub s_Connection_Execute_Sample()
Dim strSQL As String
Set adoCON = New ADODB.Connection
'连接处理及结果检查
If f_Connection() = True Then
strSQL = "Select Count(*) As 条数 From 住址台账"
'SQL语句的执行和结果检查
If f_ExecSelect(strSQL) = True Then
MsgBox adoRS("条数") 'SQL正常结束时
End If
'数据库关闭
adoCON.Close
End If
Set adoCON = Nothing
End Sub
'----------------------------------------------------------------------
'连接处理
'----------------------------------------------------------------------
Function f_Connection() As Boolean
Dim objErrItem As Error
f_Connection = False
'使用ADO打开MDB
On Error GoTo ErrorSub '出错检测处理打开
adoCON.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\happy\addressbook.mdb;"
On Error GoTo 0 '出错检测处理关闭
'连接OK时返回True
f_Connection = True
Exit Function
ErrorSub:
'失败时
Call f_ErrorInfo(adoCON)
End Function
'----------------------------------------------------------------------
'SQL语句执行
'----------------------------------------------------------------------
Function f_ExecSelect(tmpSQL As String) As Boolean
Dim objErrItem As Error
f_ExecSelect = False
'使用ADO打开MDB
On Error GoTo ErrorSub
Set adoRS = adoCON.Execute(tmpSQL)
On Error GoTo 0
f_ExecSelect = True
Exit Function
ErrorSub:
Call f_ErrorInfo(adoCON)
End Function
'----------------------------------------------------------------------
'显示详细出错信息处理
'----------------------------------------------------------------------
Sub f_ErrorInfo(tmpCon As ADODB.Connection)
Dim objErrItem As Error
'信息输出
Set objErrItem = tmpCon.Errors.Item(0)
Debug.Print "Description=" & objErrItem.Description
Debug.Print "HelpContext=" & objErrItem.HelpContext
Debug.Print "HelpFile=" & objErrItem.HelpFile
Debug.Print "NativeError=" & objErrItem.NativeError
Debug.Print "Number=" & objErrItem.Number
Debug.Print "Source=" & objErrItem.Source
Debug.Print "SQLState=" & objErrItem.SQLState
Set objErrItem = Nothing
End Sub
【使用情景】
数据库编程。
【小结】
本例提供了3个VBA过程,可快速进行数据库编程。
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 合并列数据到一个文本框的示例;...(05.06)
- 通过命令按钮让Access列表...(04.24)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)

学习心得
最新文章
- 仓库管理实战课程(19)-库存统计...(05.21)
- 仓库管理实战课程(18)-设置日期...(05.19)
- 仓库管理实战课程(17)-库存明细...(05.13)
- 【Access高效办公】条件格式设...(05.12)
- 仓库管理实战课程(16)-联合查询...(05.07)
- 合并列数据到一个文本框的示例;输出...(05.06)
- 仓库管理实战课程(15)-月度库存...(04.30)
- Access选择打印机、横纵向、纸...(04.29)
- 仓库管理实战课程(14)-出库功能...(04.26)
- 通过命令按钮让Access列表框指...(04.24)