Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Referenzhandbuch » Verwendung von SQL » SQL-Funktionen » SQL-Funktionen (P-Z)

 

UNISTR-Funktion [Zeichenfolge]

Konvertiert eine Zeichenfolge, die Zeichen und Unicode-Escape-Sequenzen enthält, in eine NCHAR-Zeichenfolge.

Syntax
UNISTR( Zeichenfolgenausdruck )
Parameter
  • Zeichenfolgenausdruck   Die Zeichenfolge, die konvertiert werden soll

Rückgabe

NVARCHAR

LONG NVARCHAR

Bemerkungen

Die UNISTR-Funktion ermöglicht die Verwendung von Unicode-Zeichen, die nicht im von der SQL-Anweisung verwendeten CHAR-Zeichensatz dargestellt werden können. In einer englischsprachigen Umgebung beispielsweise kann die UNISTR-Funktion verwendet werden, um chinesische Schriftzeichen aufzunehmen.

Die UNISTR-Funktion bietet eine ähnliche Funktionalität wie die N''-Konstante, nur dass die UNISTR-Funktion Unicode-Zeichen und Zeichen aus dem CHAR-Zeichensatz zulässt, während die N''-Konstante nur Zeichen aus dem CHAR-Zeichensatz zulässt.

Der Zeichenfolgenausdruck enthält Zeichen und Unicode-Escape-Sequenzen. Die Unicode-Escape-Sequenzen haben die Form \uXXXX oder \uXXXXXX, wobei jedes X eine hexadezimale Ziffer ist. Die UNISTR-Funktion konvertiert jedes Zeichen und jede Unicode-Escape-Sequenz in das entsprechende Unicode-Zeichen.

Wenn eine 6-stellige Unicode-Escape-Sequenz verwendet wird, darf ihr Wert nicht '10FFFF' überschreiten, den größten Unicode-Codepunkt. Eine Sequenz wie '\u234567' ist keine 6-stellige Unicode-Escape-Sequenz. Es ist die 4-stellige Sequenz '\u2345', gefolgt von den Zeichen 6 und 7.

Wenn zwei benachbarte Unicode-Escape-Sequenzen ein UTF-16-Ersatzpaar bilden, werden sie in der Ausgabe in ein Unicode-Zeichen zusammengefasst.

Siehe auch
Standards und Kompatibilität
  • SQL/2003   Erweiterung des Herstellers

Beispiele

Das folgende Beispiel gibt die Zeichenfolge "Hello" zurück.

SELECT UNISTR( 'Hel\u006c\u006F' );

Das folgende Beispiel fasst das UTF-16-Ersatzpaar D800-DF02 zum Unicode-Codepunkt 10302 zusammen.

SELECT UNISTR( '\uD800\uDF02' );

Dieses Beispiel ist gleichwertig mit dem vorhergehenden:

SELECT UNISTR( '\u010302' );