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

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - Datenbankadministration » Datenbankkonfiguration » Internationale Sprachen und Zeichensätze » Türkische Zeichensätze und Kollationen

 

Alternative türkische Kollation 1254TRKALT

Einigen Anwendungsentwicklern kann das Problem mit dem türkischen "I" erhebliche Schwierigkeiten bereiten. Die korrekte Lösung besteht darin, sicherzustellen, dass alle Objektreferenzen in der korrekten Groß-/Kleinschreibung vorliegen oder dass die richtige Form des Buchstabens I verwendet wird. Es kann jedoch sinnvoller sein, zugunsten der ANSI-Regeln gegen die türkischen Regeln zu verstoßen.

SQL Anywhere stellt die 1254TRKALT-Kollation bereit, die mit 1254TRK identisch ist, bis auf die Tatsache, dass "I-Punkt" und "I-ohne-Punkt" als äquivalente Zeichen behandelt werden.

Es ist wichtig, die Konsequenz dieser Änderung zu verstehen. In einer 1254TRKALT-Datenbank sind die folgenden Zeichenfolgen gleichwertig:

Das Wort "Fig" mit kleingeschriebenem I-mit-Punkt und I-ohne-Punkt.

Dies ist zwar für türkische Benutzer nicht korrekt, kann jedoch für andere Benutzer akzeptabel sein.

Das zweite Problem taucht auf, wenn ORDER BY benutzt wird. Sehen Sie sich die folgenden Zeichenfolgen an:

Zeichenfolgen in der Reihenfolge I-mit-Punkt a, I-ohne-Punkt a, I-ohne-Punkt s und I-mit-Punkt s.

In einer 1254TRK-Datenbank würde eine ORDER BY-Klausel bei diesen Zeichenfolgen Folgendes bewirken:

 Zeichenfolgen in der Reihenfolge I-ohne-Punkt a, I-ohne-Punkt s, I-mit-Punkt s.

Und zwar, weil "I-ohne-Punkt" in der alphabetischen Folge vor "I-Punkt" steht. In einer 1254TRKALT-Datenbank ergäbe sich folgende Reihenfolge:

Die Zeichenfolgen, die in der Reihenfolge I-mit-Punkt a, I-ohne-Punkt a, I-ohne-Punkt s, I-mit-Punkt s sortiert sind.

Und zwar, weil "I-ohne-Punkt" gleichwertig ist mit "I-Punkt".