It is important to understand that any time an Access client disconnects unexpectedly, the connection, there may be a "corruption flag" in the. Mdb file indicating that the database is in a corrupt state (regardless of whether data is actually damaged or not). Any user who is set to the database while this flag will get a message open, tried, and the database must be repaired before it can be used. If the users do not have permission to perform the > Repair, or they do not know how to perform the repair, there may be significant downtime before the database is available again. This can result in a loss of productivity as well as extreme frustration for users. Following the 5 tips below you will minimize your chances of data loss from corruption in your Access databases.
1) Split your database.
The most important thing you can do to prevent corruption in MS Access databases, is the cleavage> Database into a "front end" and a "back-end". The front-end contains all the forms, queries and reports, while the back-end contains only the data tables. A copy of the front-end is stored on each user's computer, and the back end of the table with the data is stored in a shared folder on the network. How does this prevent corruption? Well, consider the amount of information that it must make on your network, so that your computer every time you open a form or report. If you have something thatInformation that makes it not completely corrupt, you risk your database. Alternatively, if the forms, queries and reports are all stored on the local computer, then the little information that is traversing the network, the actual table data. By reducing the amount of data you need to move back and forth over the network to significantly reduce the chances of damaging your database. If you are with the corruption problems with an Access database on a network areDrive that splits the database is the most important thing you can do to stop it.
2) Hold open any connections.
This applies to both programmers and users. If you are a programmer, make sure you close your connections as soon as possible after use. End of the connections are opened to enable more options for an "unexpected" dropped connection too. The only time you might want to leave a connection open longer than is necessary when it is used within a loop.For such a case, open the link at the top of the loop, and then close it after the loop is then terminated. To make sure it is closed for all cases (including exceptions).
If you use a Microsoft Access database or application, you should close it when you're done. Here, too, would open up so that the application provides the opportunity, if lost to corruption, a network connection is. Remind users to always close the application before he went home, as nightly backup jobs mayor fail the cause of corruption in the shared file if there are open connections.
3) Leave the database correctly.
Always close properly or the database application. Ctrl-Alt-Delete/End Task can wreak havoc on Access databases. Whenever possible, complete your tasks, then close the application using the File - Exit menu option or alternative Exit option provided by the application.
4) You do not save on hardware.
Remember that the corruption flag can be set by theslightest packet loss between your computer and the database file. MS Access was sometimes called "the canary in the coal mine". She has not gained this reputation, the first request "die" if the slightest hint of a problem in your network. Just like the slightest presence of gas caused the canary died, the slightest presence of network problems and packet loss can kill your Access applications. Make sure that you are not with the cheap built-in network cards that come withsome PCs. Instead, use brand network cards. The same goes for cheap hubs. Whenever possible, match good brands of equipment throughout
Your network.
5) Compact and repair regularly.
Performing regularly recommend the built-in compact and repair function is to prevent corruption and improve performance. Consider automating this function with a program to compact and repair all of your databases at night or on weekends.
ErrorLook out for - the following error messages may signal database corruption:
"The database 'databasename.mdb must be repaired or is not a Microsoft Access database file."
"Record (s) can not be read, no read permission on" databasename.mdb "
"Unexpected Error 35012"
"Unrecognized database format 'databasename.mdb'."
"" Databasename.mdb 'is not an index in this table. Look in the Indexes collection of the TableDef object to determinethe valid index names. "
"The Microsoft Jet database engine could not find the object 'databases'. Make sure the object exists and that you spell its name and path correctly."
"The database has a user on the computer'''', placed that they will not open locked or prevented"
"Disk Error - Reserved Error (-1601)"
"The database has to be set in an unexpected state."
"Record (s) can not be read, no read permission forMSysObjects
"Record (s) can not be read, no read permission on 'MSysACEs'."
"Can not find the Microsoft Jet database engine, the input table or query 'MSysAccessObjects. Make sure it exists and that the name is spelled correctly."
Conclusion:
While you may never be able to avoid all Microsoft Access database corruption, you should be able to stop 98% of the problems before they occur by following 5 easy tips. Follow these tips and implement aprudent automated backup schedule to minimize your chances of significant data loss.
No comments:
Post a Comment