sql >> Base de Datos >  >> RDS >> Mysql

¿Qué COLLATE debo configurar para usar todo tipo de idiomas posibles?

  • Primera opción (MySQL 8.0):utf8mb4_0900_ai_ci
  • Segunda opción (a partir de 5.6):utf8mb4_unicode_520_ci
  • Tercera opción (5.5+):utf8mb4_unicode_ci
  • Antes de 5.5, no puede manejar todo el chino ni los emojis:utf8_unicode_ci

Los números se refieren a los estándares Unicode 9.0, 5.20 y (sin número) 4.0.

Ninguna intercalación es buena para ordenar todos idiomas al mismo tiempo. Español, Alemán, Turco, etc, tienen peculiaridades que son incompatibles. Las intercalaciones anteriores son las 'mejores' de propósito general disponibles.

utf8mb4 maneja todos los caracteres especificados por Unicode (incluidos Cherokee, Klingon, Cuneiform, Byzantine, etc.)

Si el portugués es el foco:

Consulte https://pt.stackoverflow.com/ y intercalación MySQL para portugués .

Estudie esto para 8.0 o esto para versiones anteriores a 8.0 para ver qué intercalación utf8/utf8mb4 se acerca más a la clasificación del portugués 'correctamente'. Quizás utf8mb4_danish_ci o utf8mb4_de_pb_0900_ai_ci sería lo mejor.

(De lo contrario, vaya con las 'opciones' enumeradas anteriormente).