Unicode in globalisierten Anwendungen verwenden

Sie können Unicode-Daten einfügen und abrufen. Daten werden transparent zwischen Datenbank und Client-Programmen konvertiert, wodurch sichergestellt ist, dass Client-Programme unabhängig vom Datenbankzeichensatz und vom länderspezifischen Zeichensatz sind.

Siehe:

Unicode-Zeichenfolgenliterals in SQL und PL/SQL darstellen

Es gibt drei Möglichkeiten, ein Unicode-Zeichenfolgenliteral in SQL oder PL/SQL darzustellen, wie in den folgenden Beispielen dargestellt.

Siehe:

Datenverluste bei der Konvertierung von Zeichensätzen vermeiden

Als Teil einer SQL- bzw. PL/SQL-Anweisung wird ein Literal (mit oder ohne Präfix N) im selben Zeichensatz wie die restliche Anweisung codiert. Auf der Clientseite wird die Anweisung im Clientzeichensatz codiert, welcher vom Parameter NLS_LANG bestimmt wird. Auf der Serverseite wird die Anweisung im Datenbank-Zeichensatz codiert.

Bei der Übertragung der SQL- bzw. PL/SQL-Anweisung vom Client zur Datenbank wird der Zeichensatz der Anweisung entsprechend konvertiert. Enthält der Datenbank-Zeichensatz nicht alle Zeichen, die der Client in den Textliteralen verwendet, gehen bei der Konvertierung Daten verloren. NCHAR-Zeichenfolgenliterale sind dafür anfälliger als CHAR-Textliterale, da diese auf Unabhängigkeit vom Datenbank-Zeichensatz ausgerichtet sind.

Um Datenverlust in einem inkompatiblen Datenbank-Zeichensatz zu vermeiden, können Sie die NCHAR-Literalersetzungsfunktion aktivieren. Weitere Informationen finden Sie in der Dokumentation Oracle Database Globalization Support Guide.