Kat*_*a24 7 ms-access vba access-vba
在我的MS Access DB中,我在VB中运行一个应该返回两条记录的查询.当我在SQL中运行它时,我得到两条记录,但是当从VBA运行时,我得到两条记录.以下是SQL视图中的代码,它获取两条记录:
SELECT *
FROM tblWebMeetingData
WHERE [Last Name] LIKE 'Marx';
Run Code Online (Sandbox Code Playgroud)
当我在VBA中这样称呼时:
SQL = "SELECT * FROM tblWebMeetingData WHERE [Last Name] LIKE 'Marx';"
Set rst = CurrentDb.OpenRecordset(SQL)
MsgBox ("Number of records: " & rst.RecordCount)
Run Code Online (Sandbox Code Playgroud)
我得到一条记录的记录.记录计数是不是要计算从SQL语句或表返回的所有记录?这是什么我在这里做错了?
谢谢
gra*_*j42 21
除了最简单的查询(性能优化)之外,DAO不会立即检索整个结果集.rst.MoveLast在打开记录集之后和检索之前强制使用完整检索和有效记录计数
rst.RecordCOunt.