Question

Quelqu'un aurait-il des conseils ou gotcha moments à regarder dehors pour lorsque vous essayez de migrer les tables MySQL à partir de la valeur par défaut cas-insenstive suédois ou ascii de l'utf-8?Certains des projets que je me suis impliqué dans luttent pour une meilleure internationalisation et de la base de données va être une partie importante de ce changement.

Avant de chercher à modifier la base de données, nous sommes en train de convertir chaque site afin d'utiliser l'UTF-8 de codage de caractères (de moins critique pour la plupart) pour aider à assurer toutes les entrées/sorties est d'utiliser le même jeu de caractères.

Merci pour toute aide

Était-ce utile?

La solution

Quelques conseils:

  • Votre CHAR et VARCHAR les colonnes de l'utiliser jusqu'à 3 fois plus d'espace disque.(Vous n'aurez probablement pas beaucoup d'espace disque croissance pour des mots suédois.)
  • Utilisation SET NAMES utf8 avant de lire ou d'écrire dans la base de données.Si vous n'avez pas cela, alors vous obtiendrez partiellement des caractères tronqués.

Autres conseils

Méfiez-vous de l'indice des limitations de longueur.Si un tableau est structuré, dire:

un varchar(255) b varchar(255) key ('a', 'b')

Vous allez à aller au-delà de 1000 octets limite sur la longueur des clés.255+255 est correct, mais 255*3 + 255*3 n'est pas d'aller travailler.

Votre CHAR et VARCHAR les colonnes de l'utiliser jusqu'à 3 fois plus d'espace disque.

Seulement si ils sont bourré de latin-1 avec des ordinaux > 128.Sinon, l'augmentation de l'utilisation de l'espace de l'UTF-8 est minime.

Les classements ne sont pas toujours favorables.Vous obtiendrez umlats rassembler non umlatted versions qui n'est pas toujours correcte.Pouvez aller de w/ utf8_bin, mais ensuite, tout est affaire délicate.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top