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

SQL Anywhere 12.0.0 (Deutsch) » SQL Anywhere Server - Datenbankadministration » Datenbank konfigurieren » Internationale Sprachen und Zeichensätze » Referenzinformationen zu Zeichensatz und Kollatierung » Türkische Zeichensätze und Kollatierungen

 

Alternative türkische Kollatierung 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 Kollatierung 1254TRKALT zu Verfügung, die mit 1254TRK identisch ist, nur 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 diese 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".