2012-03-01 8 views
0

64ビットのSybase ASEドライバは、SQLLENタイプを32ビットと見なしていますが、UnixODBCと他のほとんどすべてのドライバは64ビットが必要です。これは、たとえばSQLBindParameter関数のstrlenパラメータに問題があります。Sybase ODBCは64ビットでUnixODBC経由ですか?

SQLINTEGER配列をSQLLEN *にキャストすることでこの特定のケースをハックすることは可能ですが、一般的なAPIの目的を破るSybaseに対して特定のODBC呼び出しを強制します。

これは解決できますか?誰もこの種の醜いハッキングのない64ビットLinuxでSybase ODBCドライバを使用することができましたか?

答えて

0

答えはノーと思われます。 Sybase APIは旧バージョンのUnixODBC 2.2.11と互換性がありますが、UnixODBC 3.3との互換性はありません。これは、SQLLENが32ビットから64ビットに移行したためです。

解決策は、UnixODBC 2.2.11に戻すことです。

関連する問題