0
votes

What I have:

  • a 64-bit SQL Server 2012 installed on Windows Server 2008R2
  • 32-bit ODBC driver SyBase ASE 12.5.1 (and I have no ability to obtain any other official driver)

What I need:

  • access from SQL Server to SyBase 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:

  1. install a 32-bit SQL Server Express 2014 on the same copmputer (probably it is not the best idea, but it makes possible to use Shared Memory )
  2. connect the 32-bit SQL Server Express to the Sybase database via ODBC

  3. create stored procedures on Express using the OPENQUERY function to request data from SyBase

  4. 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))

1

1 Answers

1
votes

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...