473,760 Members | 8,623 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

How to corrupt a MS Access database file in a 'normal' way?

Here is the situation: I wrote a VB programm, which stores all the
information in a single Access database file using jet engine. It
worked well, however one of my customs reported that there was some
problems with this programm. I checked, the log files showed that the
database was corrupted.

The customer told me that there no 'illegal' operation such as pull out
the plug, or kill the programm via task manager...

So is there any possible normal operation which could corrupt the
database? such as 'Weird characters' I guess? (The custom is from
Italy, is there any special Italian chars could do this?)

Of course it is possible that there are some bugs in the programm,
which possibly caused a error may corrupt the database file, but still,
how? The program wasn't stopped violently anyway ...

Anyone could give some idea about this? Since it is rather hard to talk
to Italians... So I can not completely investigate 'what they did about
the program'... I have to check the program and potential operations
which may corrupt the database.

Thanks a lot.

Jul 18 '06
17 4893
"Wayne" <cq*******@volc anomail.comwrot e in
news:11******** **************@ h48g2000cwc.goo glegroups.com:
If you are running the backend off a server, a intermittent
network connection or flakey network card will cause corruption
regularly. Other applications seem to be able to live with a less
than perfect network connection but Access isn't so tolerant.
It can't be, given that all workstations have to monitor the same
file for record locking purposes.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Jul 19 '06 #11
David, I'm not sure what you mean here. Are you saying that a backend
file can never get corrupted by a faulty network connection?

Jul 20 '06 #12
"Wayne" <cq*******@volc anomail.comwrot e in message
news:11******** **************@ 75g2000cwc.goog legroups.com...
David, I'm not sure what you mean here. Are you saying that a backend
file can never get corrupted by a faulty network connection?
I've seen that happen.

Keith.
www.keithwilby.com
Jul 20 '06 #13
"Wayne" <cq*******@volc anomail.comwrot e in
news:11******** **************@ 75g2000cwc.goog legroups.com:
David, I'm not sure what you mean here. Are you saying that a
backend file can never get corrupted by a faulty network
connection?
No. I'm only providing the explanation of *why* Access is more
sensitive to network issues than other applications.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Jul 20 '06 #14
David, I understand the meaning of your post now. Is this the only
reason that Access is more susceptible to network issues i.e. several
workstations are using the same backend? If, for instance, only one
workstation was using the server backend at a given time, is that
backend just as susceptible to a bad network connection as it would be
if several workstations were connected to it?

I'm interested in this because I have had one nightmarish situation
where a backend was being corrupted on a regular basis. To the best of
my knowledge usually only one person was accessing the backend at any
given time. The problem was traced to one of the workstations that had
a bad network connection.

In another case the server backend that was being corrupted only had
one workstation connected to it. The problem ended up being a faulty
network wall socket on that workstation.

Any more info on this subject is appreciated.

Jul 20 '06 #15
"Wayne" <cq*******@volc anomail.comwrot e in
news:11******** **************@ h48g2000cwc.goo glegroups.com:
David, I understand the meaning of your post now. Is this the
only reason that Access is more susceptible to network issues i.e.
several workstations are using the same backend? If, for
instance, only one workstation was using the server backend at a
given time, is that backend just as susceptible to a bad network
connection as it would be if several workstations were connected
to it?
Yes, because the single workstation doesn't know there's only one
user. That's the point -- there is no central authority managing
connections to the database, so every workstation has to be have as
if it's sharing the file with other users.
I'm interested in this because I have had one nightmarish
situation where a backend was being corrupted on a regular basis.
To the best of my knowledge usually only one person was accessing
the backend at any given time. The problem was traced to one of
the workstations that had a bad network connection.
The file has to be opened and edited across the network. If there's
a problem in the network, it doesn't matter if it's one user or two
hundred.
In another case the server backend that was being corrupted only
had one workstation connected to it. The problem ended up being a
faulty network wall socket on that workstation.

Any more info on this subject is appreciated.
Well, just think about the way Jet works. It's a file server
database engine, with the workstations cooperating in allowing
edits. Each workstation has to check to see if the records are
available. COnsider also the refresh interval for showing changes
made by other users (I think it's 1 second?) -- that means your
workstation has to check for changes 60 times a second. This is
completely different from how Word would work -- Word isn't even
editing the original file, but a temp file, and it's the only user.
The only time there's network traffic is when you retrieve and save.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Jul 20 '06 #16
Thanks for the info.

Jul 20 '06 #17
You can use 'exclusive links' if you relink using code -
the relink wizard does not support this option.

If you use exclusive links, the BE database is opened
in exclusive mode.

If you open the BE database in exclusive mode, you
would expect it to be cached locally in the network
client cache, reducing network traffic.

Even if you open the BE database in shared mode, you
would expect it to be cached locally in the network
client cache if you are the only user. This is what
'opportunistic' locking does: opportunistical ly, when
you are the only user, it upgrades shared locks to
exclusive locks, enabling the system to cache the file
locally in the network client cache.

There were a series of bugs found in the caching and
opportunistic locking code of Windows 2000 (as evidenced
by multiple announcements that it had been fixed).

In fact, while you might expect local caching to reduce
network errors, it appears that historically, local
caching has always been worse, with logic, code, or network
errors causing cache corruption. Of course, most of these
errors are cache errors when you have multiple connections,
not cache errors in exclusive mode. The simplistic
explanation of the opportunistic locking problems was
that they happened when a share lock request was received.
In any case, turning off file caching (and opportunistic
locking) has always been a good idea when you get file
corruption.

The Jet database engine is a distributed database engine,
with the physical record locking semantics provided by
the file system. In a network file system the file system
is a distributed database, with the server represented by
a network client 'file redirector', which uses Server
Message Blocks to communicate with the file service on
the server.

Any network errors are effectively errors inside the database
engine, and in any case the SMB protocol does not appear
to be robust: if there was adequate error handling network
errors should not cause errors in the record handling.
However, I haven't seen inside: perhaps the Jet engine
just ignores errors which were not in the original DOS
file system and network redirector it was built to work
with.

(david)

"Wayne" <cq*******@volc anomail.comwrot e in message
news:11******** **************@ h48g2000cwc.goo glegroups.com.. .
David, I understand the meaning of your post now. Is this the only
reason that Access is more susceptible to network issues i.e. several
workstations are using the same backend? If, for instance, only one
workstation was using the server backend at a given time, is that
backend just as susceptible to a bad network connection as it would be
if several workstations were connected to it?

I'm interested in this because I have had one nightmarish situation
where a backend was being corrupted on a regular basis. To the best of
my knowledge usually only one person was accessing the backend at any
given time. The problem was traced to one of the workstations that had
a bad network connection.

In another case the server backend that was being corrupted only had
one workstation connected to it. The problem ended up being a faulty
network wall socket on that workstation.

Any more info on this subject is appreciated.

Jul 21 '06 #18

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
5082
by: aaj | last post by:
Hi all I have been given a corrupt access 2000 backend and asked to salvage the data.(youve gussed it, no backup) On trying to open it just kicks me out saying its not a valid database file - so I can't even use the internal compact/repair function I have tried the usal stuff i.e. Trying to repair via another access program using dao
4
2206
by: Big Time | last post by:
Major fiasco on my hands here. I was in the middle of updating a record when the system halted, and the Access DB became non responsive. Eventually I had to CTRL-ALT-DEL to close the application. When I tried to open the DB again, the file has become corrupt and I get the error message "The Microsoft Jet database engine cannot find the object "Databases". I understand a database can become corrupt during an interrupted write to a...
1
1771
by: Shannon Rotz | last post by:
I have an Access XP database which just decided to corrupt, with 3 days' worth of brand-new coding in it. The regular "compact and repair" function hasn't worked in this case, and I've tried importing some of the objects into a new database but that doesn't work either. Basically, every time I try something I get a "Access has detected corruption in this file" message, followed by a "the {object type} name {object name} is misspelled or...
9
2487
by: Bungle | last post by:
Hi There, Does anybody know where i might be able to locate a tool/application that can determine whether a Database is corrupt?? Also, can a bad network connection cause a corruption to a database? Thanks in advance for any help, Bungle
2
2528
by: Tomas Vera | last post by:
Hello All (This is being cross-posted to the C++ group), I've started receiving the subject message during a compile of a C++ based interface module used in my C# based WebApp. This module exposes some functions from our main Windows DLL to my web app. I get the same error message whether I compile from the IDE or from our normal command line based build process. What database file does the message refer to?
0
1351
by: Tomas Vera | last post by:
Hello All (This is being cross-posted to the C# group), I've started receiving the subject message during a compile of a C++ based interface module used in my C# based WebApp. This module exposes some functions from our main Windows DLL to my web app. I get the same error message whether I compile from the IDE or from our normal command line based build process. What database file does the message refer to?
4
2396
by: nepdae | last post by:
Well, after reading and hunting all over the web, including here, I still haven't been successful in my attempts to resolve my situation. So, I thought maybe I'd just ask. Here's the situation: I have an Access 2000 database (~15 users), split into a front- and back-end. Each user has a local copy of a workgroup file and the data file is out on a server. The problem started when the IS department upgraded the server at night, touching...
3
2208
by: rdemyan via AccessMonster.com | last post by:
One of my users had a corrupt front end that wouldn't open. My app is launched using a launching application (logon app). The logon app has a button for downloading a "fresh" copy of the front end from the server to the user's PC. I thought that this was a good idea since Access seems susceptible to corruption. I told the user to open the logon form and click the "Download" button, which would then replace the corrupt front end on his...
13
2676
by: Owen Jenkins | last post by:
Following on from an earlier post... I can reliably corrupt a record by doing the following ... Open two separate but identical front ends on one PC each linking to the same back end. Edit a records in one front end and leave it unsaved. Edit the same record in the other front end and save the change. Save the change in the first front end - this pops up the Write Conflict message to which I click Save.
0
9521
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9945
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9900
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9765
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6599
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5214
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5361
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
3
3442
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2733
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.