面试题答案
一键面试实现思路
- 数据库连接:使用
ADODB.Connection
对象连接到 Access 数据库。 - 事务处理:通过
Connection
对象的BeginTrans
、CommitTrans
和RollbackTrans
方法来实现事务的开始、提交和回滚。 - 异常处理:使用
On Error
语句捕获异常,并在捕获到异常时回滚事务。
关键代码示例
Option Explicit
Sub ExecuteDatabaseOperations()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strSQL As String
'创建数据库连接对象
Set conn = New ADODB.Connection
'设置连接字符串,假设数据库文件为 test.mdb
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb"
On Error GoTo ErrorHandler
'打开数据库连接
conn.Open
'开始事务
conn.BeginTrans
'插入多条记录示例
strSQL = "INSERT INTO YourTableName (Column1, Column2) VALUES ('Value1', 'Value2')"
conn.Execute strSQL
strSQL = "INSERT INTO YourTableName (Column1, Column2) VALUES ('Value3', 'Value4')"
conn.Execute strSQL
'更新数据示例
strSQL = "UPDATE YourTableName SET Column1 = 'NewValue' WHERE SomeCondition"
conn.Execute strSQL
'提交事务
conn.CommitTrans
On Error GoTo 0
'关闭数据库连接
conn.Close
Set rs = Nothing
Set conn = Nothing
Exit Sub
ErrorHandler:
'捕获到异常,回滚事务
If Not conn Is Nothing Then
conn.RollbackTrans
conn.Close
End If
MsgBox "数据库操作出现错误: " & Err.Description
Set rs = Nothing
Set conn = Nothing
End Sub
在上述代码中:
ADODB.Connection
和ADODB.Recordset
是操作 Access 数据库常用的对象。ConnectionString
根据实际的数据库路径和版本可能需要调整,对于 Access 2007 及以上版本,Provider 可能是Microsoft.ACE.OLEDB.12.0
。On Error GoTo ErrorHandler
用于捕获异常,当捕获到异常时,会跳转到ErrorHandler
标签处执行代码,回滚事务并给出错误提示。