64-bit Java cannot access 32-bit MS Access database through ODBC

I have a new 64-bit laptop and installed 64-bit 64-bit and 64-bit versions of STS. I am trying to create an ODBC connection with a 32-bit Microsoft database; however, the default administration tools do not provide a driver for access. After googling, I saw that there is an administrative tool for creating 32-bit drivers located in C: \ Windows \ SysWOW64 \ odbcad32.exe. However, an ODBC connection created from this that gives me an error message indicating an architecture mismatch when the program starts:

"[Microsoft] [ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and the Application"

I think because 64-bit Java is trying to use the 32-bit driver. To get around this problem, I tried putting the “-D32” argument in the VM arguments, but I got the same result.

I am going to remove STS and Java and replace them with 32-bit versions. Is there a better solution?

+7
source share
1 answer

To download the 32-bit source library, you need to have a 32-bit JVM.

You do not need to remove Java, you can have as many versions as possible.

You can use your 64-bit JVM to talk to the 32-bit JVM that loads your driver, but it can be harder than you need.

+3
source

All Articles