代码如下:
Public Function GetRst(ByVal strsql As String) As ADODB.Recordset '自定义GetRst函数,用于获得一个SQL查询的实例对象
On Error GoTo GetRst_Err
Dim rst As ADODB.Recordset
Dim cnn As New ADODB.Connection
Set rst = New ADODB.Recordset
Set cnn = CurrentProject.Connection
rst.Open strsql, cnn, adOpenKeyset, adLockOptimistic
Set GetRst = rst
Exit_GetRst_Err:
Set rst = Nothing
Set cnn = Nothing
Exit Function
GetRst_Err:
MsgBox Err.Description
Resume Exit_GetRst_Err
End Function
GetRst函数实现通过一条SQL语句,返回一个ADODB.Recordset对象实例。在该函数中用到的两个重要对象如下:
-
ADODB.Recordset.Open方法:用于建立一个数据库连接,并返回数据库指针,用以指向数据库中的数据表、查询、窗体等对象。
-
adLockOptimistic:指示逐记录的开放式锁定。提供程序使用开放式锁定,即仅在调用Update方法时锁定记录。
调用方法如下:
Dim rst As ADODB.Recordset
Dim strsql As String
Set rst = New ADODB.Recordset
strsql=“构建SQL查询语言”
Set rst=GetRst(strsql)'获得一个SQL查询的实例对象