This section describes the general functionality supported by the driver.

  • ODBC compliance: The driver is Level 1 compliant, that is, it supports all ODBC Core and Level 1 functions.

    In addition, the driver supports the SQLSetPos function.

    The driver supports the function SQLCancel for SELECT statements with OpenEdge V12.4 and higher. If a SELECT statement is canceled during the first or a subsequent fetch operation, the driver returns a "query aborted" exception. This function can be used by a thread to cancel a statement that is being executed by another thread. One or more statements may be cancelled if the method is called on a statement object that is executing multiple statements simultaneously and the driver may not return expected results. The driver supports this function for ODBC 3.x applications only.

    Refer to ODBC API and scalar functions in the Progress DataDirect for ODBC Drivers Reference for a list of supported API functions.

  • Unicode support: When connected to a Unicode database, the Progress OpenEdge Wire Protocol driver supports the Unicode data types listed in the following table, in addition to standard ODBC data types listed in "Data Types." The Use Wide Character Types connection string option must be enabled.
    Table 1. Mapping Progress OpenEdge Data Types to Unicode Data Types
    Progress OpenEdge Data Type. . . Maps to Unicode Data Type. . .
    CHAR SQL_WCHAR
    VARCHAR SQL_WVARCHAR

    The driver supports the Unicode ODBC W (Wide) function calls, such as SQLConnectW. This allows the Driver Manager to transmit these calls directly to the driver. Otherwise, the Driver Manager would incur the additional overhead of converting the W calls to ANSI function calls, and vice versa.

    See "UTF-16 applications on UNIX and Linux" for related details.

    Refer to Internationalization, localization, and Unicode in the Progress DataDirect for ODBC Drivers Reference for details.

  • Isolation and lock levels: The driver supports isolation levels 0 (read uncommitted), isolation level 1 (read committed), isolation level 2 (repeatable read), and isolation level 3 (serializable).

    Refer to Locking and isolation levels in the Progress DataDirect for ODBC Drivers Reference for details.

  • Connections and statements supported: The driver supports multiple connections and multiple statements per connection.