BOF、EOF 屬性 (ADO)

  • BOF 表示目前記錄位置在 Recordset 物件中的第一筆記錄之前。

  • EOF 表示目前記錄位置在 Recordset 物件中的最後一筆記錄之後。

傳回值

BOFEOF 屬性會傳回布林值。

備註

使用 BOFEOF 屬性來判斷 Recordset 物件是否包含記錄,或當您在記錄之間移動時,是否超出 Recordset 物件的限制。

如果目前記錄位置在第一筆記錄之前,BOF 屬性會傳回 True (-1),如果目前記錄位置位於第一筆記錄或之後,則傳回 False (0)。

如果目前記錄位置在最後一筆記錄之後,EOF 屬性會傳回 True,如果目前記錄位置位於最後一筆記錄或之前,則傳回 False

如果 BOFEOF 屬性為 True,則沒有任何目前記錄。

如果您開啟不含記錄的 Recordset 物件,BOFEOF 屬性會設定為 True (請參閱 RecordCount 屬性,以取得 Recordset 此狀態的詳細資訊)。 當您開啟至少包含一筆記錄的 Recordset 物件時,第一筆記錄是目前記錄,而 BOFEOF 屬性為 False

如果您刪除 Recordset 物件中的最後一筆剩餘記錄,BOFEOF 屬性可能會維持 False,直到您嘗試重新置放目前記錄為止。

下表顯示哪些 Move 方法可以與 BOFEOF 屬性的不同組合搭配使用。

MoveFirst,

MoveLast
MovePrevious,

移動 < 0
移動 0 MoveNext,

移動 > 0
BOF=TrueEOF=False 允許 錯誤 錯誤 允許
BOF=FalseEOF=True 允許 允許 錯誤 錯誤
兩者都是 True 錯誤 錯誤 錯誤 錯誤
兩者都是 False 允許 允許 允許 允許

允許 Move 方法不保證方法會成功找到記錄;其只表示呼叫指定的 Move 方法不會產生錯誤。

下表顯示當您呼叫各種 Move 方法,但無法成功找到記錄時,BOFEOF 屬性設定會發生什麼情況。

BOF EOF
MoveFirstMoveLast 設定為 True 設定為 True
移動 0 沒有變更 沒有變更
MovePreviousMove< 0 設定為 True 沒有變更
MoveNextMove> 0 沒有變更 設定為 True

套用至

Recordset 物件 (ADO)

另請參閱

BOF、EOF 和 Bookmark 屬性範例 (VB)
BOF、EOF 和 Bookmark 屬性範例 (VC++)