vb eof详解

源地址:https://zhidao.baidu.com/question/87122186.html?qbl=relate_question_1&word=eof%20sql&skiptype=2

 BOF:指当前记录位置位于Recordset对象的第一个记录之前;

  EOF:指当前记录位置位于Recordset对象的最后一个记录之后。

  这两个的属性值均返回布尔型:True和False,使用BOF和 EOF 属性可确定 Recordset 对象是否包含记录,或者从一个记录移动到另一个记录时是否超出 Recordset 对象的限制。 下表即是各自的使用说明及查询结果: 

  说明:

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

  (2)如果当前记录位于
Recordset 对象的最后一个记录之后 EOF 属性将返回True,而当前记录为 Recordset 对象的最后一个记录或位于其前,则将返回 False。 

  (3)如果
BOF 或 EOF 属性为 True,则没有当前记录。

  (4)如果打开没有记录的
Recordset 对象,BOF 和 EOF 属性将设置为True,而 Recordset 对象的 RecordCount 属性设置为零。打开至少包含一条记录的 Recordset 对象时,第一条记录为当前记录,而BOF 和 EOF 属性为 False。

  (5)如果删除
Recordset 对象中保留的最后记录,BOF 和 EOF属性将保持 False,直到重新安排当前记录。

 

  具体用法:

 

  If objRs.BOF Then

  表示:当前指针的位置是在第一行记录之前,则...

  If objRs.EOF Then

  表示:当前指针的位置是在最后一行记录之后,则...

  If Not objRs.EOF Then

  表示:当前指针的位置没有到达最后一条记录

  If Not objRs.BOF then

  表示:当前指针的位置没有到达第一条记录

  推荐使用下面两条

  If Not (objRs.BOF AND objRs.EOF) Then

  表示:指针位于RecordSet 的当中(并非是最后一条和第一条) ,说明一定有记录。

  If objRs.BOF AND objRs.EOF Then

  表示:没有任何记录

posted on 2016-10-19 21:58  海子呢  阅读(798)  评论(0)    收藏  举报