记录集限制

适用于:Access 2013、Office 2013

使用 BOFEOF 属性,可以确定 Recordset 对象是否包含记录,或者在记录之间移动时是否超出了 Recordset 对象的限制。 将 BOFEOF 视为位于 Recordset 开头和末尾的“幻影”记录。 基于检查数据的示例 Recordset 构建的对象如下所示:

ProductID

ProductName

UnitPrice

BOF



7

Uncle Bob's Organic Dried Pears

30.0000

14

豆腐

23.2500

28

Rssle Sauerkraut

45.6000

51

Manjimup Dried Apples

53.0000

74

Longlife Tofu

10.0000

EOF



如果当前记录位于第一个记录之前,则 BOF 属性返回 True (-1),如果当前记录就是第一个记录或者位于第一个记录之后,则返回 False (0)。

如果当前记录位于最后一个记录之后,则 EOF 属性返回 True ,如果当前记录就是最后一个记录或者位于最后一个记录之前,则返回 False

如果 BOFEOF 属性为 True ,则说明当前无记录,如下面的代码所示:

 
If oRs.BOF And oRs.EOF Then 
 ' Command returned no records. 
End If 

如果打开不包含任何记录的 Recordset 对象,则 BOFEOF 属性均设置为 True ,而 Recordset 对象的 RecordCount 属性设置的值取决于游标的类型。 对于动态游标,将返回 -1 (CursorType = adOpenDynamic) 对于其他游标将返回 0。

如果打开至少包含一个记录的 Recordset 对象,则第一个记录是当前记录, BOFEOF 属性均为 False

如果删除 Recordset 对象中最后一个剩余的记录,则游标将保留在未定状态。 BOFEOF 属性可能一直保留在 False,直到您尝试重新定位当前的记录,具体情况取决于提供程序。