Versionen von ODBC-Treibermanagern, die SQLWCHAR als 32-Bit-Mengen (UTF-32) definieren, können nicht mit dem SQL Anywhere-ODBC-Treiber verwendet werden, der weite Aufrufe unterstützt, da dieser Treiber für 16-Bit-SQLWCHAR erstellt wurde. Für solche Fälle wird eine reine ANSI-Version des SQL Anywhere-ODBC-Treibers zur Verfügung gestellt. Diese Version des·ODBC-Treibers unterstützt keine der Schnittstellen für weite Aufrufe (z.B. SQLConnectW).
Der Shared Object-Name des Treibers lautet libdbodbcansi12_r. Von dem Treiber wird nur eine Variante mit Threading zur Verfügung gestellt. Unter Mac OS X steht der Treiber zusätzlich zu den dylib-Dateien auch in Bundle-Form zur Verfügung (dbodbcansi12_r.bundle). Bestimmte Frameworks, z.B. Real Basic, funktionieren nicht mit den dylib-Dateien und erfordern das Bundle.
Der normale ODBC-Treiber behandelt SQLWCHAR Zeichenfolgen als UTF-16 Zeichenfolgen. Dieser Treiber kann mit einigen ODBC-Treibermanagern nicht verwendet werden, die SQLWCHAR-Zeichenfolgen als UTF-32 Zeichenfolgen behandeln, z.B. iODBC. Bei Verwendung von Unicode-fähigen Treibern konvertieren diese Treibermanager nahe Aufrufe von der Anwendung in weite Aufrufe für den Treiber. Ein reiner ANSI-Treiber umgeht dieses Verhalten, sodass der Treiber mit diesen Treibermanagern verwendet werden kann, sofern die Anwendung keine weiten Aufrufe ausführt. Weite Aufrufe über iODBC oder über einen anderen Treibermanager mit ähnlicher Semantik werden weiterhin nicht unterstützt.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |