Last post Dec 04, 2014 09:02 AM by bbcompent1
Nov 25, 2014 01:11 PM|bbcompent1|LINK
This is really a strange problem. This did work at one time before and now it is not. I have no idea what has changed but here is my scenario. I have an access database I connect to using C# .NET. The database is on the local drive and I have tried using
a standard connection string as well as a system DSN, neither lets me connect. The standard connection gives me:
Unrecognized database format 'C:\Service\MyDatabase.accdb'.
My connection string looks like this:
+ DBPathName +
Jet OLEDB:Database Password=*******************;
I switch to the one that is a system DSN it says: Could not find installable ISAM.
ideas what I can do about this?
is Windows 2012 x64.
Nov 25, 2014 01:17 PM|Ashim Chatterjee|LINK
Did you installed access database engine before connecting ?
Nov 25, 2014 01:40 PM|bbcompent1|LINK
Yes I did. I know it is there because I can connect to .xls and .xlsx files perfectly fine.
Nov 25, 2014 01:47 PM|Ashim Chatterjee|LINK
something's wrong with the compatibility i guess (try updating the office),try to use a different accdb file and see if the issue persists.Moreover check if you have enough permissions on that file.These might be preventing to open the connection.
Nov 25, 2014 01:59 PM|bbcompent1|LINK
To do a check, I saved the accdb as format 2002/2003 and I was able to connect fine. The odd thing is I can read excel 2007/10 perfectly fine which is the newer office format. I am also using the same driver call for the excel as I am for access.
Nov 25, 2014 02:10 PM|Ashim Chatterjee|LINK
some versioning problem i think , see this thread , it discussed the same issue :
Nov 25, 2014 02:28 PM|bbcompent1|LINK
Well, tried what was suggested here:
If you have already built it using items only available in newer versions then you will need to remove those items. Make sure to set the Set the Access Options / General / Creating Databases / New Database Sort order to / General - Legacy.
Not sure where to turn next. Any ideas?
Dec 04, 2014 01:24 AM|cts-gcrdsd|LINK
Ususally this error "Unrecognized database format" is caused by the file corruption. You can try to "repair" and check whether the issue still occurs.
Dec 04, 2014 03:18 AM|cts-gcrdsd|LINK
Why there is "JET OLEDB" in the connection string? JET provider does not support .accdb, it only supports .mdb. (Office 2003 format). I did some local testing (Accessing .accdb with your connection string), but the exception message is a little different.
Unhandled Exception: System.ArgumentException: Format of the initialization string does not conform to specification starting at index 70.
at System.Data.Common.DbConnectionOptions.GetKeyValuePair(String connectionString, Int32 currentPosition, StringBuilder buffer, Boolean useOdbcRules, String&
keyname, String& keyvalue)
Please remove the "JET OLEDB" and see if it helps.
Dec 04, 2014 06:37 AM|bbcompent1|LINK
The reason JET OLEDB is there is because ConnectionStrings.com put it there:
With database password
This is the connection string to use when you have an Access 2007 - 2013 database protected with a password using the "Set Database Password" function in Access.
Jet OLEDB:Database Password=MyDbPassword;
Dec 04, 2014 08:57 AM|Mikesdotnetting|LINK
Try opening the file in Access, then go to File » Options » Client Settings and scroll to
Encryption Method at the bottom. Change to selection to
Use Legacy Encryption.
Dec 04, 2014 09:02 AM|bbcompent1|LINK
The problem appears to actually be related to a 32 bit processor attempting to run x64 Windows 7 Enterprise. See: