Progress DataDirect Connect for JDBC for Sybase

    An asterisk (*) indicates support that was added in a hotfix or software patch subsequent to a release.

    Refer to the following resources for additional information:

    • Product Compatibility Guide: Provides the latest data source and platform support information. 
    • Fixes: Describes the issues resolved since general availability.  

    Version 5.1.4

      ENHANCEMENTS
      • The driver has been enhanced to comply with FIPS standards for data encryption. As part of this enhancement, the driver was tested with FIPS 140-3 enabled using a Red Hat OpenJDK 21 on a Red Hat Universal Base Image 9 instance. Refer to FIPS (Federal Information Processing Standard) for details.*
        Available: 1/31/2025 | 5.1.4.000161
      • The driver has been enhanced to include timestamp in the Spy and JDBC packet logs by default. If required, you can disable the timestamp logging by specifying the following at connection: For Spy logs, set spyAttributes=(log=(file)Spy.log;timestamp=no) and for JDBC packet logs, set ddtdbg.ProtocolTraceShowTime=false.
      • Interactive SQL for JDBC (JDBCISQL) is now installed with the product. JDBCISQL is a command-line interface that supports connecting your driver to a data source, executing SQL statements and retrieving results in a terminal. This tool provides a method to quickly test your drivers in an environment that does not support GUIs.*
      • The CryptoProtocolVersion connection property has been added to the driver. This property can be used to avoid vulnerabilities associated with SSLv3 and SSLv2, including the POODLE vulnerability. Refer to CryptoProtocolVersion for details.
      • Support for result set holdability has been added to the driver.
      CHANGED BEHAVIOR
      • The connection property SpyAttributes has been updated to exclude the attribute load=classname, which was previously used to load the driver specified by the given class name. If a log file name does not include the .log extension, the driver automatically appends it.*
        Available: 10/28/2025 | 5.1.4.000162
      • The driver has been updated to remove all sensitive values from the string returned by calling getURL(). You might be impacted if your applications or tests expect these values when calling the function.*
      • The installer program now requires you to install a JRE that is Java SE 11 or higher before running the installer. In earlier versions, the JRE used by the installer program was included in the product. However, to avoid potential security vulnerabilities, the installer program no longer includes a JRE. Instead, the installer program uses the JRE in your environment to allow for the most secure version of a JRE to be used.*
        Note: This change does not affect the JVM requirements for the driver. For the latest driver requirements, refer to the Product Compatibility Guide.
        Available: 7/3/2024
      • The driver has been enhanced to support Sybase Extended Password Encryption, which uses the asymmetrical key type, instead of the symmetrical key type. This provides stronger password encryption for the secure transmission of public key passwords over networks.
      • Added the RegisterStatementPoolMonitorMBean connection property. Note that the driver no longer registers the Statement Pool Monitor as a JMX MBean by default. You must set RegisterStatementPoolMonitorMBean to true to register the Statement Pool Monitor and manage statement pooling with standard JMX API calls. Refer to RegisterStatementPoolMonitorMBean for details.*
      NOTES, KNOWN ISSUES, AND LIMITATIONS
      • GSS Plug-in Authentication Implementation: The following limitations apply to connection pooling through LDAP using GSS authentication:
        • GssPluginObject cannot be specified in the connection URL.
        • GssPluginObject cannot be stored in LDAP for pooled connections.
      • Executing Scripts (for UNIX Users): If you receive an error message when executing any DataDirect Connect for JDBC shell script, make sure that the file has EXECUTE permission. To do this, use the chmod command. For example, to grant EXECUTE permission to the testforjdbc.sh file, change to the directory containing testforjdbc.sh and enter:
        chmod +x testforjdbc.sh
      • Distributed Transactions Using JTA: If you are using JTA for distributed transactions, you may encounter problems when performing certain operations.
      • JDBC Methods: The following notes on JDBC methods apply generally to Progress DataDirect for JDBC drivers.
        • The DataDirect Connect Series for JDBC drivers allow PreparedStatement.setXXX methods and ResultSet.getXXX methods on Blob/Clob data types, in addition to the functionality described in the JDBC specification. The supported conversions typically are the same as those for LONGVARBINARY/LONGVARCHAR, except where limited by database support.
        • Calling CallableStatement.registerOutputParameter(parameterIndex, sqlType) with sqlType Types.NUMERIC or Types.DECIMAL sets the scale of the output parameter to zero (0). According to the JDBC specification, calling CallableStatement.registerOutputParameter(parameterIndex, sqlType, scale) is the recommended method for registering NUMERIC or DECIMAL output parameters.
        • When attempting to create an updatable, scroll-sensitive result set for a query that contains an expression as one of the columns, the driver cannot satisfy the scroll-sensitive request. The driver downgrades the type of the result returned to scroll-insensitive.
        • The DataDirect Connect Series for JDBC drivers support retrieval of output parameters from a stored procedure before all result sets and/or update counts have been completely processed. When CallableStatement.getXXX is called, result sets and update counts that have not yet been processed by the application are discarded to make the output parameter data available. Warnings are generated when results are discarded.
        • The preferred method for executing a stored procedure that generates result sets and update counts is using CallableStatement.execute(). If multiple results are generated using executeUpdate, the first update count is returned. Any result sets prior to the first update count are discarded. If multiple results are generated using executeQuery, the first result set is returned. Any update counts prior to the first result set are discarded. Warnings are generated when result sets or update counts are discarded.
        • The ResultSet methods getTimestamp(), getDate(), and getTime() return references to mutable objects. If the object reference returned from any of these methods is modified, re-fetching the column using the same method returns the modified value. The value is only modified in memory; the database value is not modified.

      Version 5.1.1

        ENHANCEMENTS
        • Enhanced to throw warning when EnableBulkLoad fails
        • Enhanced AuthenticationMethod connection property to allow for the driver to
          send a user ID in clear text and an encrypted password to the server for
          authentication.

      Connect any application to any data source anywhere

      Explore all DataDirect Connectors

      A product specialist will be glad to get in touch with you

      Contact Us