It would better to use native JDBC driver. A issue of JDBC-ODBC bridge native codes. The native codes invoke ODBC function SQLGetData with a invalid BufferLength parameter. This problem happens on 64bit jvm only. As I know, it can happen on all jdks: since 1.0 to 1.7. The BufferLength is a 8 bytes SQLLEN parameter. The high 4 bytes is left uninitialized in 64bit jvm, that the root cause.