2012-03-01 86 views
0

似乎64位Sybase ASE驅動程序仍將SQLLEN類型視爲32位,而UnixODBC和幾乎所有其他驅動程序都需要64位。例如對於SQLBindParameter函數中的strlen參數,這是有問題的。Sybase通過UnixODBC以64位的ODBC?

儘管可以通過將SQLINTEGER數組強制轉換爲SQLLEN *來破解這種特殊情況,但這會迫使我爲Sybase進行特定的ODBC調用,從而無法達到通用API的目的。

這是可以解決的嗎?有沒有人設法在64位Linux上使用Sybase ODBC驅動程序,而沒有這些醜陋的黑客?

回答

0

看起來答案是否定的。 Sybase API與以前版本的UnixODBC 2.2.11兼容,但與SQLODEN從32位移動到64位不兼容。

因此解決方案是恢復到UnixODBC 2.2.11。