Die SQL Anywhere Server-Zeichensatzkonvertierung bewirkt, dass SQL-Anweisungen vor der syntaktischen Analyse und der Ausführung in den Zeichensatz der Datenbank konvertiert werden. Eine Nebenwirkung dieser Konvertierung ist, dass Zeichen in der SQL-Anweisung, die nicht in den Zeichensatz der Datenbank konvertiert werden können, in ein Ersatzzeichen konvertiert werden. Eine SQL-Anweisung mit einem beliebigen Unicode-Zeichen kann auf eine der folgenden Arten ausgeführt werden:
Verwenden Sie die Funktion UNISTR, um die Unicode-Zeichenwerte anzugeben.
Verwenden Sie eine Hostvariable, um die Unicode-Zeichenwerte anzugeben.
Verwenden Sie UTF-8 als Zeichensatz der Datenbank.
Wenn Sie UTF8BIN als CHAR-Kollatierung auswählen, ist der Zeichensatz der Datenbank UTF-8. Wenn Sie UTF-8-Kodierung angeben, ist die CHAR-Kollatierung UCA.
Der Unicode-Kollatierungsalgorithmus (UCA, Unicode Collation Algorithm) stellt erweiterte Vergleiche, Sortierungen und Groß-/Kleinschreibungs-Konvertierungen bereit, aber er kann sich auf die Performance auswirken. Auch wenn UTF8BIN platzsparend und schnell ist, so sind Sortierreihenfolge und Vergleiche binär. Geben Sie die CHAR-Kollatierung als UTF8BIN an, wenn Sie Unicode-Zeichen in Ihren SQL-Anweisungen benötigen, aber nicht die volle Funktionalität von UCA für Sortierungen und Vergleiche brauchen. Verwenden Sie UCA nur wenn nötig, indem Sie die Funktionen SORTKEY und COMPARE benutzen.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |