Anfang des Inhaltsbereichs

Hintergrunddokumentation UNICODE in Programmiersprachen Dokument im Navigationsbaum lokalisieren

JDBC, ODBC, der C/C++-Precompiler und Python unterstützen UNICODE.

JDBC

Da Java mit UNICODE-Zeichenketten arbeitet, kann Java UNICODE-Spalten lesen und schreiben.

Wenn Sie UNICODE auch in SQL-Anweisungen verwenden wollen, müssen Sie die unicode-CONNECT-Eigenschaft auf true setzen. SQL-Anweisungen werden dann an die Datenbankinstanz im UTF-16/UCS-2-Format übergeben. Wenn das Übertragungspaket für die SQL-Anweisungen nicht groß genug ist, können Sie die das Übertragungspaket unter Verwendung des Datenbankparameters _PACKET_SIZE vergrößern.

ODBC

UNICODE wird im ODBC-Treiber unterstützt.

Je nach Betriebssystem müssen Sie folgende Besonderheiten beachten:

Betriebssystem

 

Windows 2000

Der ODBC-Treiber exportiert nur noch die UNICODE- bzw. Wide-Funktionen des ODBC-API. ANSI-Funktionen werden vom Windows Driver Manager auf die entsprechenden Wide-Funktionen abgebildet. Das bedeutet, dass Applikationen sowohl ANSI- als auch UNICODE-Funktionen des ODBC-API nutzen können.

UNIX/Linux

Auf Plattformen, bei denen der Standard-UNICODE-Typ WCHAR_T mit vier Bytes definiert ist, ist der Einsatz des ODBC-Treibers zur Zeit nicht möglich. Datenbank und ODBC-Treiber verarbeiten UNICODE intern als zwei Byte lange Werte.
Im Treiber sind sowohl die ANSI- als auch die UNICODE-Varianten des ODBC-API definiert.
Applikationen, die die Funktionalität eines Driver Manager nicht benötigen, können statisch mit dem ODBC-Treiber gelinkt werden.

C/C++-Precompiler

Der C/C++-Precompiler überprüft beim CONNECT, ob die Datenbank UNICODE-fähig ist (Datenbankparameter _UNICODE = YES) oder nicht.

Siehe auch: Beispiel 2 (HelloUnicodeDB.cpc) sowie Arbeiten mit UNICODE-Daten

Python

Python 2.*: Es können UNICODE-Spalten gelesen und geschrieben werden. UNICODE-Zeichenketten können nicht als SQL-Anweisungen verwendet werden.

Python 1.5.2: Ausgabewerte vom Typ UNICODE werden nach ASCII konvertiert. Wenn diese Umwandlung fehlschlägt, wird ein Fehler gemeldet.

Ende des Inhaltsbereichs