¿Por qué la intercalación predeterminada de MySQL es latin1_swedish_ci?

112

¿Cuál es el razonamiento detrás de la configuración latin1_swedish_cicomo predeterminada compilada cuando otras opciones parecen mucho más razonables, como latin1_general_cio utf8_general_ci?

Alan
fuente
6
El sueco acaba de comprar ese honor [broma]
zerkms
1
Tenga en cuenta que utf8_general_cino es compatible con UTF-8 de 4 bytes, por lo que para un verdadero soporte UTF-8 le gustaría utf8mb4_general_cio una de las otras mb4variantes.
ColinM

Respuestas:

109

El tipo que lo escribió era codirector de una empresa sueca .

Posiblemente por razones similares, el idioma predeterminado de Microsoft SQL Server es us_english.

gbn
fuente
5
Él es finlandés, pero el finlandés y el sueco comparten casi los mismos caracteres especiales, por lo que comparten la misma intercalación que no distingue entre mayúsculas y minúsculas
kommradHomer
5
Hablando de 'buenos incumplimientos'. Lo cual, por supuesto, no lo es. Genial ver eso después de qué, ¿20 años? cambiaron esto a un predeterminado sano, como utf8_general_ci. ¡Buen trabajo, MySQL!
Michael Trouw
2
y pensé que sería mejor para mí, porque no soy un experto. Mi vida es mentira
Pablo Escobar
3
Sí, tienes razón, llamó a MariDB (el nombre de la esposa es María) y MaxDB (el nombre de su hijo es Max). pero por qué dejó su nombre de hija ..! :) LOL. !
Ajmal Praveen
89

latin1_swedish_cies un conjunto de caracteres de un solo byte, a diferencia de utf8_general_ci.

En comparación latin1_general_ci, tiene soporte para una variedad de caracteres adicionales utilizados en idiomas europeos. Por lo tanto, es la mejor opción si no sabe qué idioma utilizará, si está obligado a utilizar solo conjuntos de caracteres de un solo byte.

Ariel
fuente
36
Me gusta esta respuesta porque intenta justificar objetivamente la elección del sueco latino. Sin embargo, la respuesta aceptada parece una explicación más plausible, desde una perspectiva social, de por qué se eligió sueco en particular.
Alan
2
Ciertamente es posible que este fuera el razonamiento del autor, y solo una coincidencia que sea sueco. Parece razonable que un sueco quiera (y sepa) admitir personajes europeos adicionales.
Matt
3
-1 La respuesta aceptada podría ser solo una opinión, pero es 100 veces más razonable que esta respuesta. Además, puede ver que "el tipo que lo escribió" también nombró a MariaDB por su hija y maxDB por su hijo.
kommradHomer
2
"latin1_general_ci tiene soporte para una variedad de caracteres adicionales usados ​​en idiomas europeos" - Solo para dejar esto claro, utf8_general_ci, a diferencia de utf8_unicode, tiene un amplio soporte para caracteres específicos de idiomas europeos. No veo ninguna ventaja sobre "latin1_swedish_ci". ¿O me equivoco?
MEM
Por ejemplo, CHAR (2) latin1 usa 2 bytes, CHAR (2) utf8mb4 (que es utf8 completo) usa 8 bytes. Uso latin1 para almacenar códigos de país de 2 dígitos porque nunca habrá caracteres no europeos
the_nuts