Jason Dundas
Registered User.
- Local time
- Today, 14:46
- Joined
- Jan 23, 2015
- Messages
- 17
I'm wondering if anyone has tryed to run access on the windows tablets? Does it work or is it too awkward/slow?
Loss of connection while writing to an Access DB is a known issue, never fixed, and probably unfixable.
Don't use Wifi / WAN with an Access BE.
The best option is to move the BE to a SQL Server BE. That will absolutely solve this issue. If you must continue to use Access as the BE, then write CSVs to a directory on the server and have an Access app RUNNING ON THE SERVER watch for these CSVs and import them into the table. At least if the write to the CSV file is interrupted, it does not corrupt the BE.
Some other methods.
1. Write a small "guard file" before you start the upload and delete it once
the upload is
complete. Could be just an empty file with an appropriate file name to
identify the file being
uploaded.
Don't process an upload if its "guard file" exists
2. Try to open the file for exclusive access from you import routine.
You shouldn't be able to while the file is still open and being written to.
3. Write the file to a temporary file name and rename it using a standard
convention once
fully written. Only process files with an appropriate file name.
A variation of 1. that T.......... uses for FTP upload:
Write a small "pilot file" once the upload is complete. Could be just an empty file with an appropriate file name to identify the file being uploaded.
Don't process an upload if its "pilot file" doesn't exist.
Are you still working on this project? If not, then suggestions are
academic. If so, then the first thing to do is split the database! Put a
Front End on each client station and leave the BE where it is.
IMO, next thing to do is convert the BE to either SQL Express or MySQL.
Incidentally, a company called Bullzip <http://www.bullzip.com> offers a
pair of great tools that convert Access databases to either MS SQL or MySQL
-- and they are free. Once the database is converted, set up a new instance
of the FE that uses ODBC to connect to the new database.
Depending on the complexity of the Access BE, converting the FE to address
the new database can be trivial (where forms and reports are bound directly
to tables), or more involved (converting Select data sources to named
queries, which will arrive in the new BE as Views).
In the case of SQL Express, you'll need SSMS (the database manager) or SQL
Bench (the MySQL database manager).
While "graduating" to a real DBMS on the back end, you can leave the
current (split) database in place, until you get the new system working.
Splitting the old database will help significantly in preventing
corruption. And as previously mentioned, you have to replace the wi-fi with
wired connections.
Migrating the current DB to a real DBMS won't take long, really.