Warum ist die Standardkollatierung von MySQL latin1_swedish_ci?
112
Was ist der Grund für die Einstellung latin1_swedish_cials kompilierte Standardeinstellung, wenn andere Optionen viel vernünftiger erscheinen, wie latin1_general_cioder utf8_general_ci?
Bitte beachten Sie, dass utf8_general_ci4-Byte-UTF-8 nicht unterstützt wird. Wenn Sie also echte UTF-8-Unterstützung wünschen, utf8mb4_general_cioder eine der anderen mb4Varianten.
Er ist finnisch, aber finnisch und schwedisch haben fast die gleichen Sonderzeichen, so dass sie die gleiche Sortierung ohne
Berücksichtigung
5
Apropos "gute Standardeinstellungen". Was das natürlich nicht ist. Schön zu sehen, dass nach was, 20 Jahren? Sie haben dies in einen vernünftigen Standard geändert, wie z utf8_general_ci. Gute Arbeit, MySQL!
Michael Trouw
2
und ich dachte, es wäre vielleicht das Beste für mich, weil ich kein Experte bin. Mein Leben ist eine Lüge
Pablo Escobar
3
Ja, Sie haben Recht, er nannte MariDB (Frauenname ist Maria) und MaxDB (sein Sohn heißt Max). aber warum hat er seinen Tochternamen verlassen ..! :) LOL. !
Ajmal Praveen
89
latin1_swedish_ciist im Gegensatz zu einem Einzelbyte-Zeichensatz utf8_general_ci.
Im Vergleich dazu unterstützt latin1_general_cies eine Vielzahl von zusätzlichen Zeichen, die in europäischen Sprachen verwendet werden. Daher ist es die beste Wahl, wenn Sie nicht wissen, welche Sprache Sie verwenden werden, wenn Sie nur Einzelbyte-Zeichensätze verwenden müssen.
Ich mag diese Antwort, weil sie versucht, die Wahl des lateinischen Schwedisch objektiv zu rechtfertigen. Die akzeptierte Antwort scheint jedoch aus sozialer Sicht eine plausibelere Erklärung dafür zu sein, warum insbesondere Schwedisch gewählt wurde.
Alan
2
Es ist sicherlich möglich, dass dies die Argumentation des Autors war und nur ein Zufall, dass er schwedisch ist. Es erscheint vernünftig, dass ein Schwede zusätzliche europäische Charaktere unterstützen möchte (und weiß).
Matt
3
-1 Die akzeptierte Antwort könnte nur eine Meinung sein, ist aber 100-mal vernünftiger als diese Antwort. Sie können auch sehen, dass "der Kerl, der es geschrieben hat" MariaDB auch nach seiner Tochter und maxDB nach seinem Sohn benannt hat.
kommradHomer
2
"latin1_general_ci unterstützt eine Vielzahl von zusätzlichen Zeichen, die in europäischen Sprachen verwendet werden" - Um dies zu verdeutlichen, bietet utf8_general_ci im Gegensatz zu utf8_unicode eine breite Unterstützung für europäische sprachenspezifische Zeichen. Ich sehe keinen Vorteil gegenüber "latin1_swedish_ci". Oder liege ich falsch?
MEM
Zum Beispiel verwendet CHAR (2) latin1 2 Bytes, CHAR (2) utf8mb4 (das ist voll utf8) 8 Bytes. Ich verwende latin1, um zweistellige Ländercodes zu speichern, da es niemals außereuropäische Zeichen geben wird
utf8_general_ci
4-Byte-UTF-8 nicht unterstützt wird. Wenn Sie also echte UTF-8-Unterstützung wünschen,utf8mb4_general_ci
oder eine der anderenmb4
Varianten.Antworten:
Der Typ, der es geschrieben hat, war Co-Chef einer schwedischen Firma .
Möglicherweise aus ähnlichen Gründen die Standardsprache us_english von Microsoft SQL Server.
quelle
utf8_general_ci
. Gute Arbeit, MySQL!latin1_swedish_ci
ist im Gegensatz zu einem Einzelbyte-Zeichensatzutf8_general_ci
.Im Vergleich dazu unterstützt
latin1_general_ci
es eine Vielzahl von zusätzlichen Zeichen, die in europäischen Sprachen verwendet werden. Daher ist es die beste Wahl, wenn Sie nicht wissen, welche Sprache Sie verwenden werden, wenn Sie nur Einzelbyte-Zeichensätze verwenden müssen.quelle