Choose JDBC Driver

Two JDBC drivers are provided for Sybase IQ: jConnect and iAnywhere JDBC driver.

Driver

Definition

jConnect

This driver is a 100% pure Java driver. It communicates with Sybase IQ using the TDS client/server protocol.

iAnywhere JDBC driver

This driver communicates with Sybase IQ using the Command Sequence client/server protocol. Its behavior is consistent with ODBC, embedded SQL, and OLE DB applications. Sybase Central and Interactive SQL support only this driver.

For jConnect documentation, see jConnect for JDBC.

When choosing which driver to use, you may want to consider the following factors:

  • Features—Both drivers are JDK 2 compliant. The iAnywhere JDBC driver provides fully-scrollable cursors, which are not available in jConnect.

  • Pure Java—The jConnect driver is a pure Java solution. The iAnywhere JDBC driver requires the Sybase IQ or SQL Anywhere ODBC driver and is not a pure Java solution.

  • Performance—The iAnywhere JDBC driver provides better performance for most purposes than the jConnect driver.

  • Compatibility—The TDS protocol used by the jConnect driver is shared with Adaptive Server Enterprise. Some aspects of the driver's behavior are governed by this protocol, and are configured to be compatible with Adaptive Server Enterprise.

Both drivers are available on Windows 95/98/Me and Windows NT/2000/2003/XP, as well as supported UNIX and Linux operating systems.

JDBC Considerations

Consider the following when running Java applications:
  • An issue exists when connecting to a Sybase IQ 12.5 server through dbisql Java using the iAnywhere JDBC driver. For details, see System Administration Guide: Volume 1 > Troubleshooting Hints > Data truncation or data conversion error.

  • Java applications running in Sybase IQ run slower than when run outside in a Sun Java Virtual Machine (JVM). Despite this limitation, Sybase recommends that you tune your applications by increasing the available memory for IQ JVM use with the database options JAVA_HEAP_SIZE and JAVA_NAMESPACE_SIZE in Reference: Statements and Options > Database Options > JAVA_HEAP_SIZE.