Instead of the standard ANSI SQL function calls, such as SQLConnect, Unicode applications use "W" (wide) function calls, such as SQLConnectW. If the driver is a true Unicode driver, it can understand "W" function calls and the Driver Manager can pass them through to the driver without conversion to ANSI. The DataDirect Connect Series forODBC drivers that support "W" function calls are:
The Driver for Apache Hive
DB2 Wire Protocol
Greenplum Wire Protocol
Impala Wire Protocol
MySQL Wire Protocol
Oracle Wire Protocol
Oracle
PostgreSQL Wire Protocol
Progress OpenEdge® Wire Protocol
Salesforce
SQL Server Wire Protocol
SQL Server Legacy Wire Protocol (UNIX only)
Sybase Wire Protocol
Sybase IQ Wire Protocol
Teradata
XML
If the driver is a non-Unicode driver, it cannot understand W function calls, and the Driver Manager must convert them to ANSI calls before sending them to the driver. The Driver Manager determines the ANSI encoding system to which it must convert by referring to a code page. On Windows, this reference is to the Active Code Page. On UNIX and Linux, it is to the IANAAppCodePage connection string attribute, part of the odbc.ini file.
The following examples illustrate these conversion streams for the DataDirect Connect forODBC drivers. The Driver Manager on UNIX and Linux prior to DataDirect Connect forODBC Release 5.0 assumes that Unicode applications and Unicode drivers use the same encoding (UTF-8). For the DataDirect Connect Series forODBC Release 5.0 and higher on UNIX and Linux, the Driver Manager determines the type of Unicode encoding of both the application and the driver, and performs conversions when the application and driver use different types of encoding. This determination is made by checking two ODBC environment attributes: SQL_ATTR_APP_UNICODE_TYPE and SQL_ATTR_DRIVER_UNICODE_TYPE. Driver Manager and Unicode Encoding on UNIX/Linux describes in detail how this is done.