MDAC 2.5 SDK - ODBC Programmer's Reference
Chapter 17: Programming Considerations
Unicode is a method of software character encoding that treats all characters as having a fixed width of two bytes. This method is used as an alternative to Microsoft® Windows® ANSI character encoding, which because it represents characters in one byte, is limited to 256 characters. Because Unicode can represent over 65,000 characters, it accommodates many languages whose characters are not represented in ANSI encoding.
Unicode does not require the use of code pages, which ANSI uses to accommodate a limited set of languages. Unicode is an improvement upon the Double-Byte Character Set (DBCS), which uses a mixture of 8-bit and 16-bit characters and still requires code pages. For more information about the Unicode standard, see http://www.unicode.org.
The ODBC 3.5 (or higher) Driver Manager is Unicode-enabled. This affects two major areas: function calls and string data types. The Driver Manager maps function string arguments and string data as required by the application and driver, both of which can be either Unicode-enabled or ANSI-enabled. These two areas are discussed in detail in the sections, "Unicode Function Arguments" and "Unicode Data," later in this chapter.
The ODBC 3.5 (or higher) Driver Manager supports the use of a Unicode driver with both a Unicode application and an ANSI application. It also supports the use of an ANSI driver with an ANSI application. The Driver Manager provides limited Unicode-to-ANSI mapping for a Unicode application working with an ANSI driver.