我习惯于以下列格式做记录集:
Dim rs As DAO.Recordset
Dim strSQL As String
strSQL = "Select field1, field2 from myTable where field1 > 30"
Set rs = CurrentDb.OpenRecordset(strSQL)
'... Do wahtever using rs.
Run Code Online (Sandbox Code Playgroud)
是否可以使用已创建的查询而不是文本并将其赋予where子句?
这是SQL Server 2008数据库的链接表.我喜欢在Access中保存简单查询.
Con*_*rix 10
你也可以
使用具有参数的查询并为查询使用参数提供的参数指定值.
Dim dbs As DAO.Database
Dim qdf As DAO.QueryDef
Dim prm As DAO.Parameter
Dim rst As DAO.Recordset
Set qdf = CurrentDb.QueryDefs("qry_SomeQueryWithParameters")
qdf.Parameters("SomeParam").Value = "whatever"
Set rst = qdf.OpenRecordset
Run Code Online (Sandbox Code Playgroud)要么
Dim rs As DAO.Recordset
Dim rsFiltered As DAO.Recordset
Set rs = CurrentDb.OpenRecordset(qry_SomeQueryWithoutParameters)
rs.Filter = "field1 > 30"
set rsFiltered = rs.OpenRecordset