Progress DataDirect Connect for JDBC for Snowflake

    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 6.0.1

    Enhancements
    • Corrections have been made to the contents of the getTypeInfo result set. For details, see Data types and getTypeInfo().

      Available: 8/29/2025 | 6.0.1.001821

    • 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 | 6.0.0.001656

    • The driver has been enhanced to support key-pair authentication. When key-pair authentication is enabled (AuthenticationMethod=KeyPair), you can authenticate to Snowflake using a pair of private and public keys. To configure the driver to use key-pair authentication, you can use the new PrivateKeyFile, PrivateKeyContent, and PrivateKeyPassphrase connection properties. For details, refer to key-pair authentication.

      Available: 6.0.0.001654

    • The driver now allows you to specify whether the driver fetches metadata for only tables in the database to which you are connected when a database name is not specified in metadata calls. When enabled, this behavior can provide better performance for metadata calls by reducing the number of tables queried. You can use the new UseSessionDatabaseForMetadata connection property to configure the driver's behavior.

      Available: 6.0.0.001654

    • The driver has been modified to map Snowflake data types for fixed-point numbers to the Numeric data type by default. In addition, the IntegerFieldMapping connection property has been added to the driver. This connection property allows you specify whether fixed-point numbers are mapped to Numeric or BigInt. Refer to IntegerFieldMapping and Data Types.

      Available: 6.0.0.001266

    • The driver has been enhanced to support the refresh token grant for OAuth 2.0 authentication. To support it, a new connection property, RefreshToken, has been added. Refer to the user's guide for details. Refer to RefreshToken for details.

      Available: 6.0.0.001101

    • The driver has been enhanced to fall back to JSON query format when the arrow format is not properly initialized. The driver uses a high-speed arrow transfer that requires the restricted APIs from java.nio package. When the JVM is not correctly configured for Java SE 16 and higher, an exception is returned when the driver executes a query. To allow you to continue executing queries in this scenario, you can configure the new ArrowFallbackToJson property to switch to the JSON query format. Refer to ArrowFallbackToJson for details.
    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 | 6.0.0.001856
    • 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

    NOTES, KNOWN ISSUES, AND LIMITATIONS
    • Parameterized insert for DOUBLE and FLOAT data types: For DOUBLE and FLOAT data types, the driver does not insert DOUBLE.MAX_VALUE (1.79769313486232 e308) using parameterized insert queries and returns the exception "Numeric value '1.79769313486232E308' is not recognized."
    • Browser-based SSO authentication retry: When a browser-based SSO (single sign-on) connection fails, the driver retries the connection using the value specified in the ConnectionRetryCount property. Each attempt to connect opens a new browser window. You can change the ConnectionRetryCount connection property to 0 to prevent the driver from re-attempting a failed connection. The default value of the ConnectionRetryCount property is 5.
    • Prepared Statement Parameter Metadata: The following limitations apply to the current implementation of Prepared Statement behavior:
      • The method getParameterTypeName returns VARCHAR as type name for all parameters of all data types.
      • The methods getPrecision and getScale return 0 for all parameters of all datatypes.
    • ResultSet MetaData: The methods getTableName() and getSchemaName() return empty strings for data types mapped to VARCHAR when a record is inserted through parameterized SQL insert queries. However, these methods return applicable table or schema names when the same record is inserted through literal value inserts.
    • Executing DataDirect Shell Script: For Linux users: If you receive an error message when executing any DataDirect 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.
    • JDBC Methods: The following notes on JDBC methods apply generally to Progress DataDirect for JDBC drivers. Additional information on driver support for the JDBC API can be found in the "JDBC Support" section of the product user's guide.
      • The DataDirect 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.
      • 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 6.0.0

    GA Release Features
    • Supports JDBC core functions. Refer to JDBC support in the Progress DataDirect for JDBC Reference.
    • Supports the core SQL-92 grammar
    • Supports Snowflake data types through data type inference. Refer to Data types and getTypeInfo() for details.
    • Supports the handling of large result sets with paging and the FetchSize connection property. Refer to FetchSize for details. 
    • Supports the following authentication methods:
       - UserID/Password 
       - OAuth 2.0 
       - Browser-based SSO (Microsoft Windows) 

      Refer to Authentication for details.

    • Supports using the COPY command for loading and unloading data from local 
      file systems and cloud platforms, such as Amazon S3, Google Cloud, and 
      Microsoft Azure. Refer to Using Copy command for details.
    • Supports proxy server connections. Refer to Proxy server for details.
    • Includes Interactive SQL for JDBC (JDBCISQL). It 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. Refer to Interactive SQL for details.
    • Includes the Progress DataDirect Snowflake Configuration Manager for 
      quick configuration and testing of your driver. This tool allows you to: 
      - Generate and edit connection URLs
      - Test connect connection URLs  
      - Execute SQL commands for testing 
      - Fetch OAuth 2.0 tokens
      - Access connection property descriptions and the full product
        documentation  

      Refer to Generating connection URLs with the Configuration Manager and Testing connections and queries.

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