I have installed a Sybase 12 DB Server Application 64Bit on a Win7 64Bit System and a old Sybase 7 DB. I created a 32Bit Sybase 7 ODBC Connection. I want to use this connection to link this DB to the Sybase 12 DB as a Proxy Server/Table. In Sybase Central I can create the Proxy Server but I can't connect to the Sybase 7 DB. I got an error message.
[Sybase][ODBC Driver][SQL Anywhere]Verbindung mit dem Server 'Kakom7Remote' konnte nicht aufgenommen werden: [Microsoft][ODBC Driver Manager] Der angegebene DSN weist eine nicht übereinstimmende Architektur von Treiber und Anwendung auf.
Are there any Sybase 7 ODBC driver for 64Bit or some other solution for this problem?
If I use a 32Bit System everything runs as desired...
When using remote data access (aka proy tables) via ODBC, the database server requires an ODBC driver that has the same bitness as the database server, i.e. when running a 64-bit database server, it requires a 64-bit ODBC driver for the connection to the remote server. (Note: The bitness of the remote server itself doesn't matter at all.)
As there is no 64-bit SQL Anywhere v7 driver, I would think you can use the 64-bit SQL Anywhere 12 driver to connect to your v7 database. - AFAIK, SQL Anywhere is quite good at using different versions for server and client, and here the v12 server just acts as a database client for the v7 server.
More on the bitness requirements for remote data access can be found in Karim's answer in this FAQ.
I had the same Problem with a IBM DB2 Connection where the 64bit ODBC driver would not run stable in my environment.
A pragmatic solution was to have a second ASA 12 instance running in 32 bit. Create a proxy table in this instance to access the ASA7 Data by the 32bit ODBC driver. I mirror the data in a normal table in the 32bit instance.
As you have ASA 12 ODBC Driver in 64 bit you can access the ASA 12 32bit server engine by a proxy table in the 64bit engine.
I hope you can follow my thoughts. It is a pain but it works stable for me.
answered 27 Sep '12, 06:23
You are mixing a 64 Bit app with a 32 bit ODBC driver or vice versa. As you say, that you are using 32 bit ODBC it must be the program, so ensure that the program is compiled as 32 bit too.
answered 27 Sep '12, 02:36