Progress DataDirect Connect and Connect64 for ODBC SQL Server Wire Protocol Driver

    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:

    Version 8.0.2

      Enhancements
      • The driver now provides read-write access to the Synapse Data Warehouse endpoints of Microsoft Fabric. For connection string examples, limitations, and configuration settings for warning messages, refer to Connection string examples, Support for Microsoft Fabric, and SuppressFabricWarnings.*
        Available: 08.02.2150 (B3227, U3190)|04/14/2025
      • The driver has been enhanced to support PKCS #12 files as keystore providers for the Always Encrypted feature. PKCS #12 files can be stored locally on the disk on any platform the driver supports. You can configure the driver to use a PKCS #12 file using the new AE Keystore Location (AEKeyStoreLocation) and AE Keystore Secret (AEKeyStoreSecret) connection options. Refer to Using keystore providers for details.
      • The driver is now compiled with a Visual Studio 2022 compiler for the Windows platforms. As a result, you must have Microsoft Visual C/C++ runtime version 14.40.33810 or higher on your machine to run the driver.
      • For AIX platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. As a part of this upgrade, the ICU library file names have changed. For the 32-bit driver, the ICU file name has changed from libivicu28.a to libivicu.a. For the 64-bit driver, the ICU file name has changed from libddicu28.a to libddicu.a. This upgrade does not apply to the other UNIX platforms. This upgrade is available starting in build 08.02.1072 of the ICU library files.*
      • For Windows platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. As a part of this upgrade, the ICU library file names have changed. For the 32-bit driver, the ICU file name has changed from ivicu28.dll to ivicu.dll. For the 64-bit driver, the ICU file name has changed from ddicu28.dll to ddicu.dll. This upgrade is available starting in build 08.02.1072 of the ICU library files.*
      • The driver has been enhanced to support Microsoft Entra ID authentication using managed identities for Azure resources. You can configure this feature using the updated Authentication Method (AuthenticationMethod) and User Name (LogonID) options. See Microsoft Entra ID authentication for details.*
        Available: 7/4/2024 | 08.02.1756
      • The driver has been enhanced to support Microsoft Entra ID authentication using service principal users. You can configure this feature using the updated Authentication Method (AuthenticationMethod), User Name (LogonID) and Password (Password) options. See Microsoft Entra ID authentication for details.*
        Available: 7/4/2024 | 08.02.1756
      • The driver has been enhanced to support the TLSv1.3 cryptographic protocol using SQL Server 2022. To enable TLSv1.3 encryption, set the Encryption Method (EncryptionMethod) option to the new value 8 (Strict). See Encryption Method for details.*
        Available: 3/18/2024 | 08.02.1617
      • For Linux platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. In addition, the ICU library file names have changed for Linux platforms. For the 32-bit driver on Linux, the ICU file name has changed from libivicu28.so to libivicu.so. For the 64-bit driver on Linux, the ICU file name has changed from libddicu28.so to libddicu.so. This upgrade does not apply to UNIX platforms.
        This upgrade is available starting in build 08.02.0965 of the ICU library files.*
        Available: 3/18/2024 | 08.02.1617
      • Note: OpenSSL library 3.0.9 has been replaced with a later version. For the latest information about the third-party components that are installed with the product, refer to the Third-party Components Compatibility Matrix.
        The default version of the OpenSSL library has been upgraded to version 3.0.9, which fixes the security vulnerabilities listed on the following page: https://www.openssl.org/news/vulnerabilities-3.0.html.*

        Notes:

        • The driver supports the following OpenSSL 3.0 providers: Default and FIPS.
        • The FIPS provider is supported only on the following platforms: Windows 64-bit, Linux 64-bit, and AIX 64-bit.
        • When installing a new version of the product, the installer program will automatically replace the OpenSSL 1.1.1 library files with the OpenSSL 3.0 library files in the install directory, which will impact all the DataDirect ODBC drivers installed on a machine. Therefore:
          • If you are using multiple 8.0 drivers, upgrade all your drivers to the latest version.
          • If you are using both 8.0 and 7.1 versions of the driver, copy the xxtls27.dll/libxxtls27.so[.sl] file to a different location before installing a new version of the 8.0 driver. Copy it back to the install directory once the installation is complete.
        Refer to TLS/SSL server authentication and TLS/SSL server authentication for details.
      • The driver has been enhanced to support the Windows certificate store for TLS/SSL server authentication. Refer to TLS/SSL server authentication for details.*
      • The driver has been enhanced to support TLS/SSL server authentication for the applications deployed in a serverless environment. The driver stores the TLS/SSL certificates in memory and lets applications use TLS/SSL server authentication without storing the truststore file on the disk. To use this enhancement, specify the content of the certificate in the refreshed Trust Store (Truststore) connection option or the new SQL_COPT_INMEMORY_TRUSTSTORECERT pre-connection attribute. Refer to the Trust Store and Using SQL_COPT_INMEMORY_TRUSTSTORECERT for details.*
        • On Windows, the driver has been enhanced to support connecting to servers using aliases created by the SQL Server Configuration Manager. To support this feature, the Host Name (HostName) connection option has been refreshed to accept alias names as valid values. The driver uses the server name and port number provided by the alias when establishing a connection. Refer to Host Name for details.*
        • The driver has been updated to return the server name to which you are connected for the value of SQL_SERVER_NAME when executing SQLGetInfo. In earlier versions of the driver, the value returned for SQL_SERVER_NAME would be the setting of the Host Name (HostName) connection option. The driver will now return the server name string that it receives from the server when connecting to the database as the value for SQLGetInfo(SQL_SERVER_NAME).*
        • The driver has been enhanced with the new Keep Connection Active (KeepConnectionActive) and Socket Idle Time (SocketIdleTimeCheckInterval) connection options. Together, these options provide you with a method to keep active idle connections to Azure SQL Database, Azure Synapse Analytics through Azure SQL Gateway, or to databases that enforce timeouts for inactivity. Refer to Keep Connection Active and Socket Idle Time for details.*
        • The driver has been enhanced to support inserts into SQL Server IDENTITY columns in replication scenarios. Either the Enable Replication User (EnableReplicationUser) connection option or the SQL_COPT_REPLICATION_USER connection attribute (numeric value 1080) can be used to allow inserts into IDENTITY columns. When the replication user feature is set to 1 (Enabled), explicit values can be inserted into IDENTITY columns defined as NOT FOR REPLICATION. If different values are specified for the Enable Replication User option and the SQL_COPT_REPLICATION_USER attribute, driver behavior is determined by the value of the SQL_COPT_REPLICATION_USER attribute. Refer to Inserts on IDENTITY columns in data replication scenarios and Enable Replication User for details.*
        • The driver has been enhanced to support access token authentication programmatically with the use of a pre-connection attribute SQL_COPT_SS_ACCESS_TOKEN. Refer to Access token authentication for more information.*
        • The driver has been enhanced to support distributed transactions. It implements the XA interface to enable support for distributed transactions. Refer to XA interface support for details.
        • The driver has been enhanced to use sp_describe_undeclared_parameters, a SQL Server system stored procedure, to fetch parameter metadata. With this enhancement, the driver can return more accurate parameter metadata for both simple and complex queries. However, it cannot determine if a parameter allows NULL values; hence, it returns SQL_NULLABLE_UNKNOWN for the nullable fields. Note that the driver does not call sp_describe_undeclared_parameters to fetch parameter metadata when Always Encrypted functionality is enabled 
          (ColumnEncryption=Enabled).*
        • The drivers using base version B0649 and later have been enhanced to include timestamp in the internal packet logs by default. If you want to disable the timestamp logging in packet logs, set PacketLoggingOptions=1. The internal packet logging is not enabled by default. To enable it, set EnablePacketLogging=1.*
        • The driver has been enhanced to support the Always Encrypted feature. Beginning with SQL Server 2016, Azure SQL and SQL Server databases support Always Encrypted, which allows sensitive data to be stored on the server in an encrypted state such that the data can only be decrypted by an authorized application. The following are highlights of this enhancement:
          • The driver detects all supported native data types in encrypted columns and transparently encrypts values bound to SQL parameters or decrypts values returned in results and output parameters.
          • The driver supports configurable caching of column encryption keys for improved performance.
          • The driver supports using Windows Certificate Store and Azure Key Vault as keystore providers.
          You can enable support for Always Encrypted using the new Column Encryption, Key Store Principal, Key Store Secret, and Key Cache Time To Live connection options. Refer to Always Encrypted for details. 
        • The new AllowedOpenSSLVersions option determines which version of the OpenSSL library file the driver uses for data encryption when multiple versions are installed with the product. For example, when specifying a value of 1.1.1 (AllowedOpenSSLVersions=1.1.1) the driver uses the 1.1.1 version of the library that is installed with the driver.*
        • The driver has been enhanced to transparently connect to Microsoft Azure Synapse Analytics and Microsoft Analytics Platform System data sources. Refer to Support for Azure Synapse Analytics and Analytics Platform System for details. 
        • The driver has been enhanced to support connecting to a proxy server through an HTTP connection. HTTP proxy support is configurable with the new Proxy Host, Proxy Mode, Proxy Password, Proxy Port, and Proxy User connection options. Refer to Connection option descriptions for details. 
        • The new Enable Server Side Cursors connection option allows you to determine which server-side cursors are enabled for the data source. Refer to Enable Server Side Cursors for details. 
        • The driver is enhanced to support Azure Active Directory (Azure AD) authentication. Azure AD authentication is an alternative to SQL Server Authentication for Azure SQL Database that allows you to centrally manage identities of database users. Refer to Azure Active Directory Authentication for details. 
        • The driver has been enhanced to support Always On Availability Groups. 
           Introduced in SQL Server 2012, Always On Availability Groups is a replica-database environment that provides a high-level of data availability, protection, and recovery. To support this enhancement, the following updates
           have been made to the driver:
          • The Host Name option has been updated to support the virtual network name (VNN) of the availability group listener as a valid value. To connect to an Always On Availability group, you must specify the VNN using this option.
          • The new Application Intent option allows you to control whether the driver requests read-only routing, thereby improving efficiency by reducing the workload on read-write nodes. For details, refer to the readme installed with the product.
          • The new MultiSubnetFailover option allows the driver to attempt parallel connections to all the IP addresses associated with an availability group when the primary listener is unavailable. This offers improved response time over traditional failover, which attempts connections to alternate servers one at a time. For details, refer to the readme installed with the product.
          Refer to Multi-Subnet Failover, Host Name, and Application Intent for details.
        • The driver and Driver Manager have been enhanced to support UTF-8 encoding in the odbc.ini and odbcinst.ini files. Refer to Character encoding in the odbc.ini and odbcinst.ini files in the Progress DataDirect for ODBC Drivers Reference for details.
        Changed Behavior
        • 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.

          Notes:

          • This change does not affect the JVM requirements for the driver. For the latest driver requirements, refer to the Product Compatibility Guide.
          • The installer program cannot remove the already installed JRE files from the install directory automatically. Remove them manually.
        • The product package no longer includes the ODBC Cursor library file (odbccurs.so) because it has some known security vulnerabilities that could potentially expose you to security risks.*
          Note: The installer program cannot remove the ODBC Cursor library file automatically while installing a new version of the driver. Remove it manually.
        • The product no longer includes version 1.1.1 of the OpenSSL library. The library will reach the end of its product life cycle in September 2023 and will not receive any security updates after that. Note that continuing to use the library after September 2023 can potentially expose you to security vulnerabilities.*

          Note: As a result of this change, when installing a new version of the product, the installer program will automatically remove version 1.1.1 of the library from the install directory, which will impact all the DataDirect ODBC drivers installed on a machine.

        • The product no longer includes version 1.0.2 of the OpenSSL library. The library has reached the end of its product life cycle and is not receiving security updates anymore. Note that continuing to use the library could potentially expose you to security vulnerabilities.*
          Note: As a result of this change, when installing a new version of the driver, the installer program will automatically remove version 1.0.2 of the library from the install directory.
        Notes, Known Issues, and Limitations
        • The driver does not support specifying values for the same connection option multiple times in a connection string or DSN. If a value is specified using the same attribute multiple times or using both long and short attributes, the connection may fail or the driver may not behave as intended.
        • When trying to connect to a database using SSL encryption, you may receive an error message similar to: "PRNG not seeded". This is because certain versions of some operating systems do not generate truly random numbers necessary for encryption. For more information about this error and available patches, please refer to the Web site: http://www.openssl.org/support/faq.html#USER1
        • All of the Release 8.0 Core Components (header files, etc.) needed for development of ODBC applications on UNIX and Linux are installed into the /include directory created by the product installer.
          Please read the notices.txt file in the installation directory for licensing information regarding the ODBC Core Components. Contact your Progress DataDirect representative if you have any questions.
          Developers using programming languages other than C++: The DataDirect ODBC Driver Manager is a C++ shared library. The ODBC Driver Manager can be used with any language that supports loading a C++ shared library; however, if you are using a programming language other than C++, you must take additional steps to ensure that the C++ libraries are initialized properly when loaded. If you are not using C++, consult your compiler documentation for instructions on using C++ shared libraries with your application.
        • A default installation of the product on UNIX and Linux assumes that the value of the LANG environment setting is en_US. If your locale is not set to en_US, the drivers may not return error messages properly. In this case, you must create a symbolic link in the /locale directory that has the same value as the LANG environment setting. This link must point to the /locale/en_US directory.
        • The column attributes 1001 and 1002, which were assigned as DataDirect-specific attributes, were inadvertently used as system attributes by the Microsoft 3.0 ODBC implementation. Applications using those attributes must now use 1901 and 1902, respectively.
        • Because of inconsistencies in the ODBC specification, users attempting to use SQL_C_NUMERIC parameters must set the precision and scale values of the corresponding structure and the descriptor fields in the Application Parameter Descriptor.
        • One of the most common connectivity issues encountered while using IIS (Microsoft's Internet Information Server) concerns the use and settings of the account permissions. If you encounter problems using DataDirect drivers with an IIS server, refer to KnowledgeBase document number 4274 on the Progress DataDirect web site: http://knowledgebase.datadirect.com
        • Attempting to execute DDL statements that contain errors causes an implicit rollback of the current transaction if executing in manual commit mode. No warning occurs when this happens. This is a Microsoft SQL Server limitation, and no driver workaround is available.
          Note: Because the SQL Server Wire Protocol drivers do not have a way to prepare statements, the driver does not send those statements to the server until SQLExecute is called. PREPARE does not return any of the normal errors that most of the drivers return. If, however, the user requests information about result columns, the driver executes a Select statement and returns warnings or errors when using SQLNumResultCols, SQLDescribeCol, or SQLColAttributes.
        • If you have problems with the catalog functions returning incorrect data, you may need to upgrade your catalog stored procedures. Make sure that you have installed the latest version of the stored procedures, which are available from your database vendor. Refer to your Microsoft SQL Server documentation for more information.
          The SQL Server Wire Protocol drivers return stored procedure names with the version number appended to them. For example, a procedure defined as "proc1" will be returned as "proc1;1".
        • Some IBM AIX C compilers, such as xlc 3.1.4, do not support the use of C++ build binaries. C developers on AIX should consult their compiler documentation and verify that their AIX C compiler supports the use of C++ shared libraries or the application could be unstable. Unexpected behavior may occur randomly if the LIBPATH variable exceeds 178 characters.
        • The Trust Store field on the Driver setup dialog supports content up to 8192 characters in length. For specifying certificate content longer than 8192 characters, edit the registry and manually add the entry to the DSN.
        • You may receive a 126 error when adding or configuring a data source stored on a network location. This is caused by the settings of the User Account Control (UAC) security feature on Windows 10. To work around this issue:
          1. From the Start menu, type regedit in the search field; then, select regedit from the results list. The Registry Editor window opens.
          2. Navigate to the following registry subkey: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
          3. Right-click on the subkey; then, select New > DWORD Value.
          4. Rename the new value EnableLinkedConnections.
          5. Right-click EnableLinkedConnections, and then click Modify. The Edit DWORD Value window opens.
          6. In the Value data field, type 1. Click OK.
          7. Close the Registry Editor; then, restart your computer.

          Important: Implementing this fix disables security safeguards that are designed to protect your machine. Before starting, refer to the following Microsoft documentation for potential risks associated with disabling the UAC feature: http://windows.microsoft.com/en-us/windows/what-are-user-account-control-settings

        • The SQL Server Wire Protocol driver requires an application to specify the size of timestamp parameters when they are bound. Setting the option WorkArounds2 to WorkArounds2=2 enables this behavior.
          In addition, the driver does not allow an application to change the size of parameter bindings between execute calls. Setting the option WorkArounds to WorkArounds=536870912 enables this behavior.
          Refer to the chapter "WorkAround Options" in the user's guide and reference for a description of these options.
        • If you have problems with the catalog functions returning incorrect data, you may need to upgrade your catalog stored procedures. Make sure that you have installed the latest version of the stored procedures, which are available from your database vendor. Refer to your Microsoft SQL Server documentation for more information. The SQL Server Wire Protocol drivers return stored procedure names with the version number appended to them. For example, a procedure defined as "proc1" will be returned as "proc1;1".
        • Some SQL implementations do not allow queries to contain the COUNT function without the DISTINCT set quantifier. For example, "SELECT COUNT(empid) FROM employees" would be considered an invalid SQL query by the database engine. This type of query can be generated using Microsoft Access and results in an error.

        Version 7.1.6

        Enhancements
        • The driver has been updated with OpenSSL library version 1.0.2k.*
          Note: OpenSSL library 1.0.2k has been replaced with version 1.0.2n.
        • The default OpenSSL library version has been updated to 1.0.2j.*
          Note: OpenSSL library 1.0.2j has been replaced with version 1.0.2n.
        • The default OpenSSL library version has been updated to 1.0.2h.*
          Note: OpenSSL library 1.0.2h has been replaced with version 1.0.2n.
        • The default OpenSSL library version has been updated to 1.0.2g.*
          Note: OpenSSL library 1.0.2g has been replaced with version 1.0.2n.
        • The default OpenSSL library version has been updated to 1.0.2f.
          Note: OpenSSL library 1.0.2f has been replaced with version 1.0.2n.
        • The new CryptoLibName and SSLLibName connection options allow you to designate the OpenSSL libraries used when SSL is enabled.

        Version 7.1.5

          Enhancements
          • The OpenSSL library was upgraded to version 1.0.0r, which fixes the
            CVE‐2015‐0204 (FREAK) vulnerability. See "RSA silently downgrades
            to EXPORT_RSA [Client] (CVE‐2015‐0204)" at
            https://www.openssl.org/news/secadv_20150108.txt for more
            information.
          • The driver has been enhanced to support NTLMv2 authentication, which can be
            enabled using the AuthenticationMethod connection option.
          • The new PRNGSeedSource connection option allows you to specifies whether the
            driver uses a file or the RAND_poll function as the seed source for SSL key generation.
          • The new PRNGSeedFile connection option allows you to specify the entropy‐source file or device used as a seed for SSL key generation.
          • The new Crypto Protocol Version connection option allows you to specify the cryptographic protocols used when SSL is enabled. This option can be used to avoid vulnerabilities associated with SSLv3 and SSLv2, including the POODLE vulnerability.

          Version 7.1.4

            Enhancements
            • The new KeepAlive connection option allows you to use TCP Keep Alive to maintain idle TCP connections.

            Version 7.1.3

            No features introduced 

            Version 7.1.2

            No features introduced 

            Version 7.1.1

            No features introduced 

            Version 7.1.0

            No features introduced 

            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