What I have:
What I need:
Adaptive Server Enterprise/12.5.4/EBF 14921 ESD#7/P/RS6000/AIX 5.1/ase1254/2095/64-bit/FBO/Fri Oct 12 12:11:32 2007
(I need to select data from 2 tables and to execute 2 stored procedures)I've installed the ODBC driver and created an ODBC source using c:\Windows\SysWOW64\odbcad32.exe
. A connection is successfully established when I test it from ODBC Data Source Administrator. But when I create a linked server I get an error:
[Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application".
That's because there is a mismatch between 64-bit SQL Server and 32-bit ODBC driver. And obviously I need some proxy to provide connection between server and driver. I've found a few bridges but all of them are proprietary.
Is there any free proxy solution or a free 64-bit SyBase driver?
UPD
There is still no good production solution, but as proposed Paolo in the answer, I use a 32-bit SQL Server Express to resolve the issue.
What I've done step by step:
Shared Memory
)connect the 32-bit SQL Server Express to the Sybase database via ODBC
create stored procedures on Express using the OPENQUERY
function to request data from SyBase
connect the 32-bit SQL Server Express 2014 to the 64-bit SQL Sever 2012 as a linked server (address of Express is LOCAL\(SQLEXPRESS)
)
install a spare sql server express 32 bit (i would put it on a separate machine) as a bridge to sybase.
on the 64bit instance create a linked server to the 32bit instance; on the 32bit instance create a linked server to sybase.
i didn't try this double hop configuration but it may eventually require some view on the 32bit rdbms to access the data on sybase from the 64bit instance.
it is not a solution i would like to have in production for a long time...