-
Jul 13th, 2021, 04:27 PM
#1
Thread Starter
Hyperactive Member
MS Access Database Engine 2010 problem
I have developed a few applications over the years that I use frequently. These applications use MS Access as the back-end database and the MS Access Database Engine 2020.
Beginning sometime in the last few days, I have been getting a System.Data.OleDb.OleDbException error from these applications. I have not made any changes to any of them, so something else was going on .
I began investigating by single-stepping through my code, setting breakpoints, etc. These errors were occuring when the DataAdapter.Update method was getting called. For example:
Code:
iActions += daActionItems.Update(dsMain.Tables("ActionItems"))
Sometimes the error would get captured via a Try-Catch block, but othertimes the Try-Catch block would not capture the error (and the application would crash/exit). This really stumped me.
Since these errors were happening across all my applications and I hadn't made any changes to them recently, I thought the issue was probably due to something else that would be common to all my applications.
I use the Windows 10 Pro OS on my PC and the Microsoft Update function makes updates on a daily basis. Last Tuesday and again today there was a "2021-07 Cumulative Update for Windows 10 Version 21H1 for x64-based Systems...". I also had recently updated the BIOS on my PC.
I was stumped as to where to begin troubleshooting this problem.
I updated my VS 2019 Community to version 16.10.3 from version 16.9.4 but that didn't fix the problem. My VS 2019 is targeted for the Microsoft .NET Framework 4.8.04084, and that looked to be the most current version (nothing to update).
On a whim, I did a "Repair" of the MS Access Database Engine 2020 via the Control Panel and BINGO...that fixed the problem!
I have no idea why this issue began. Does anybody have any ideas...?
Last edited by Mark@SF; Jul 13th, 2021 at 04:54 PM.
-
Jul 13th, 2021, 04:49 PM
#2
Thread Starter
Hyperactive Member
Re: MS Access Database Engine 2010 problem
Another related question...if this problem is something that I cannot control, then should I consider migrating away from MS Access for my back-end database and instead transition my applications to use something else (e.g., SQLite)?
-
Jul 13th, 2021, 10:52 PM
#3
Re: MS Access Database Engine 2010 problem
Originally Posted by Mark@SF
On a whim, I did a "Repair" of the MS Access Database Engine 2020 via the Control Panel and BINGO...that fixed the problem!
So the issue was the Access Database Engine and thus noting at all to do with VB.NET, so why is this posted in the VB.NET forum? I have suggested to the mods that it be moved to Database Development. Please post in the most appropriate forum.
-
Jul 13th, 2021, 10:55 PM
#4
Re: MS Access Database Engine 2010 problem
Originally Posted by Mark@SF
Another related question...if this problem is something that I cannot control, then should I consider migrating away from MS Access for my back-end database and instead transition my applications to use something else (e.g., SQLite)?
While it can do the job and many won't have any issues with it, Access is not robust and I wouldn't recommend it as a backend for anyone. I would absolutely recommend using something else, but it's up to you whether you think the effort is worth the potential reward or not.
-
Jul 14th, 2021, 11:22 AM
#5
Re: MS Access Database Engine 2010 problem
I moved this to Database Development, because the issue is likely due to Access, and you just might get more Access experts in here.
I would reiterate what JMC said, but in a different way: Access can do some weird things. Normally, I have seen this when the database was being accessed across a LAN connection, and the connection dropped at some point, but I have seen a few cases where the database got messed up when it was on the same computer as the program. In your case, it sounds like Repair was sufficient, but when these things happen, it has been my experience that what happens can be darn near ANYTHING. For about a decade, I had a database that could be neither opened nor deleted. You couldn't do anything at all with or to that file. It appeared impervious to any approach whether in programs or the OS. Eventually, we got rid of it by getting rid of the computer it was on. Formatting the HD likely would have worked, as well, but nothing less ever had any impact on it. That's only the most extreme example.
Fortunately, these odd occurrences are VERY rare. That corrupted DB was used by a program that has been used pretty much every business week for over twenty years, and issues have come up only two or three times in that span, with that strange corruption being a singular occurrence. Having said that, I'd also add that no two corruptions have ever been the same. Being both rare and utterly unpredictable, makes this kind of thing hard to investigate.
My usual boring signature: Nothing
-
Jul 15th, 2021, 01:38 AM
#6
Re: MS Access Database Engine 2010 problem
What the others said, adding: Yes, put Access where it belongs: in the rubbish bin.
I moved to SQLite some years ago, and never looked back, albeit SQLite has its own pitfalls, but none where you would "loose" your data
Last edited by Zvoni; Tomorrow at 31:69 PM.
----------------------------------------------------------------------------------------
One System to rule them all, One Code to find them,
One IDE to bring them all, and to the Framework bind them,
in the Land of Redmond, where the Windows lie
---------------------------------------------------------------------------------
People call me crazy because i'm jumping out of perfectly fine airplanes.
---------------------------------------------------------------------------------
Code is like a joke: If you have to explain it, it's bad
-
Jul 16th, 2021, 11:34 AM
#7
Re: MS Access Database Engine 2010 problem
I moved to SQL Server Express for more reliable/versatile systems with a small number of simultaneous users. Still, I would not go so far as throwing out Access. I'm see no particular advantage to the new Access databases, but there was a powerful advantage to the Jet DB engine, since it was included in all Windows OS. You could create a DB, move it around, work with it, all without having anything to install whatsoever. That was useful. Of course, most people DID install something, whether it was Access or some other program to work with the DB, as without such a front end, it could be somewhat awkward, but it sure was convenient. Also, as I tried to point out, while the errors I have seen with Access databases were wonderfully strange, they were also so terribly infrequent that you could readily forget about them. Once a decade problems on one computer just isn't all that memorable, even if the actual problems were interesting.
My usual boring signature: Nothing
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|