Home >
We all know that Microsoft Access is not the right choice for enterprise databases. But there's no doubt that sometimes it is the right choice. Whether it's a quick prototype or an application that needs to have roughly the same database on the client and the server and be maintainable by the client, sometimes Access just makes sense. So there's a lot of legacy content out there where we as developers need to be able to access Access from IIS on our local machines. Usually that's no problem, but developers tend to need a lot of power, and if you have more than 4 GB of RAM on your machine, you have to have 64 bit Windows. Now there's a problem.
You see, Microsoft has decided that we don't need a 64 bit Jet driver to enable us to connect to Access databases. In itself, this is not the end of the world. But the real problem is the dearth of information about what this really means to enable developers to solve the problem and get Access running in IIS. Since I've already done the detective work to resolve the issue, I thought I'd save you the pain and share my findings.
The first thing you'll find when you start looking into the issue is that the MS Access driver doesn't show up in your list of installed drivers.
If you're like me, you'll then try to install the Jet driver by itself, 3 versions of Microsoft Data Access Components (MDAC), and anything else you can think of, despite Microsoft's assurances that the driver you have installed on your 64 bit system is more recent than anything you can download. Don't. Your problem is that the ODBC Administrator tool Microsoft put a shortcut to in your Control Panel only shows native 64-bit drivers. I added another shortcut in my Control Panel to point to what I feel is the correct ODBC Administrator, C:\Windows\SysWOW64\odbcad32.exe. This tool shows all the installed drivers.
It's kind of a relief when you get to this stage to know that you haven't completely lost your mind, but it doesn't explain why you're still getting
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
when you try to run a page that is using an Access database as a data source.
Next week, I'll explain what's going on and how to fix it.




Facebook Application Development
I'm sure it will be useful for someone... but man was that dull.
With it's 20 concurrent user limit, I've found Access not really useful for anything production, not just enterprise usage. Though admittedly I haven't even looked at Access in 10 years, does it still have that limit, and the 1 or was it 2 gig table limit? Those were what I found the most prohibitive back in the day.
In a properly designed data driven application, the connection is made, the query is executed, and the connection is released in a split second, so you'd have to have several thousand users accessing the system at exactly the same time in order to come close to having 20 concurrent connections. In the real world, this situation is unlikely to occur except with a large enterprise application or an application where users tend to be scheduled to use it at the same time (for example, an eLearning application being used in concert with a webcast).
I think it's unfortunate that the warnings about the 20 concurrent connections seldom point out how hard it is to hit the limit.
There are a lot of applications that don't need 2GB of storage to be useful. I think developers who need that much storage know in advance that Access isn't the right choice.
I'v used the Access database (.mdb) for years for all kind of serious applications and websites.
It's a simple powerfull database format, but with obvious limitations.
The 20 user limit is just a kind of warning from Microsoft, they like u to use their SQL server product.
The storage limit is 4GB and at this moment there is only a 32 bit driver. In a heavyly used workstation enviroment sometimes the databse file breaks if a workstation for example has a bluescreen. But in a web enviroment I have never had this kind of problems.
I've used Access applications and database backend up to 40 user without a any performance problems.
The problem with the 32bit driver will be solved with the relase of Office 2010, it will come in 32 and 64 bit and Access 64 bit will only work with a 64 bit Access Database driver.
I do like Access databases but more and more I use SQL server. SQL server has indeed have a lot of advantages but that comes with a high license fee for Microsoft.
The times I've used Access I hit the 20 concurrent user limit pretty frequently - I used it as the back-end of on-line games, to track scores and determine real time top ten lists. The really bad thing about the limit is that - at least back in the day - it would lock the Access driver on the server, and this was a hosted environment at a web host, so every other company that was on the same box had their Access drivers locked. Maybe they've made the limit less prohibitive since then?
Amy,
If you have a work-around for 64bit IIS calling Access, please don't wait until next week to post it! There are thousands of threads on the web seeking that solution. If the answer is to cripple IIS into 32 bit mode that's a different story.
Hi, Gary;
I apologize that I had enough other stuff going on that I couldn't get back to this sooner, but hopefully my this week's entry will point you in the right direction.
I have the exact same problem on my PC with Windows Vista 64. Now I need to run a web page on my personal web server and I get that error. Tryed to find an answer and I didn't.
I'll wait for you're explanation.
See the "Related Entries" link above.
Thanks for this vital information about how 64-bit Windows conceals the 32-bit ODBC drivers. This article helped me discover how to properly configure the ODBC drivers for Firebird SQL to interface with a 32-bit client DLL, and ultimately communicate with the server. Many thanks.
Thanks for this vital information about how 64-bit Windows conceals the 32-bit ODBC drivers. This article helped me discover how to properly configure the ODBC drivers for Firebird SQL to interface with a 32-bit client DLL, and ultimately communicate with the server. Many thanks.
Looking for a new laptop for wife and had read several times that the 64 version is not the everymans solution. IMHO many have programs etc left over from win ver 3.x, I know I do......
Mags say program" sjsjsljkslj " is not backwards compatible with 64 bit operations.
So as for me and my gang, FORGEDABOUDT. I still my favorite spreadsheet program, Appleworks!!!! Easy, complete, love the 'go to ___' statments to chain stuff.
32 bits, ah me. Another 'improvement'. Thanks but no thanks. Not now...
L
PS what he said was he dont wanna be a programmer type, it should be already included in the software and simply DO what is asked of it.
You are an angel and saved my day!
However I dont understand why changing the Data Source shortcut path and thing suddenly work.
Could you give some details why it happening?
Regards
Bryan