Don't Move Last unless you really need to: this will be slow with a large recordset or a recordset drawn across a network.Record Count will always be at least 1 if records exist, so there is no need to Move Last if you only want to know if you have records to work with.SQLite, an open-source library is a means of persisting data for Android applications.The implementation of SQLite requires lots of boilerplate code, however.Always test for No Match after using Seek or a Find method.Example: It is poor programming to open anything without explicitly closing it. Short of pressing Ctrl Alt Del, you may find that Access will not quit if recordsets or other objects are not closed and dereferenced.Button1Click(Sender: TObject); begin with Oracle Data Set1 do begin Open; Show Message(' ROWID of the first record = ' Field By Name(' ROWID').This article highlights ten common traps with DAO recordsets in VBA code.
Any code that examines the Fields of a recordset or applies criteria is affected.So, if you test Record Count immediately after you Open Recordset, you typically get 0 (if there are no records), or 1 (if there are any, regardless of how many will load.) This does not apply to recordsets of type db Open Table type (the default for local tables.) If you need to know the Record Count, use the Move Last method first.This forces Access to wait while all records load, so the Record Count reflects the entire recordset.Example: Using any of the Move methods (Move First, Move Last, Move Next, or Move Previous) causes an error if the recordset has no records. Either of these approaches works: For recordsets based on queries, SQL statements, and attached tables, the Record Count property returns the number of records accessed so far.When you first Open Recordset(), Access grabs the first record, and keeps processing your code while the others load.