- Local time
- Today, 04:50
- Joined
- Feb 19, 2002
- Messages
- 46,920
If you've never used SQL Server or other RDBMS, you won't automatically understand why using a search box to find the record you want to update is actually best practice. Access is very tightly bound to Jet and ACE and so if one of those is the BE database, Access works pretty efficiently. Once you move up in the world to one of the "big guys", you want to think about how to make the process more efficient and that means letting the RDBMS to the heavy lifting. You want Access to send a query to the server requesting the minimum number of rows/columns for any particular update. Best is just one single row for a bound form. That minimizes the traffic between Access and the server and reduces the load on the server.A recorset allows you to position yourself in a record and modify the data, both in the form of a continuous list and in the form of fields.
Unless I don't understand the problem and I'm wrong.
If you've ever converted an old Access application to link to tables in SQL Server and didn't make any modifications to the app, you were probably flabbergasted to find out that the SQL Server version was much slower if the linked table contained more than a trivial number of rows. Why? Because when you bind a form/report to a table, you force Access to request ALL rows be downloaded from the server and brought into memory on your local PC. VERY inefficient in the relational database world. Just bring specifically what you need to update NOW. So, the very first and possibly only change you need to make is to change your bound forms to be bound to queries with WHERE clauses to minimize the network traffic. You may never need to do anything else to get acceptable speed.