IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration MySQL Discussion :

Choix du charset et collation


Sujet :

Administration MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 68
    Points : 40
    Points
    40
    Par défaut Choix du charset et collation
    J'ai créé une base de données sans trop me soucier des charset et collations (jeux de caractères et interclassements) parce que j'utilisais juste des caractères anglais/français.

    Dans ma base de données j'ai des tables en utf8 avec des colonnes VARCHAR utf8-general-ci et des tables en latin1 avec des colonnes latin1-swedish-ci.

    Les variables de ma base sont aussi mélangées, je ne sais pas si c'est grave :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    character_set_client=utf8
    (Valeur globale)=latin1
    character_set_connection=utf8
    (Valeur globale)=latin1
    character_set_database=latin1
    character_set_results=utf8
    (Valeur globale)=latin1
    character_set_server=latin1
    Je voudrais unifier tout, donc la question est : je modifie tout en latin1 ou utf8 ?
    Pour l'instant j'aimerais utiliser juste le signe € qui n'est pas dans latin1, mais je peux m'en passer.

    De ce que j'ai lu, l'utf8 (codé sur 1 à 4 octets) ne prend pas plus de place que le latin1 (codé sur 1 octet) tant qu'on utilise des caractères latin1. Et il permet d'utiliser des autres langues comme russe, chinois... Donc tout bénef.
    Sauf que j'ai lu aussi que le fait qu'il est codé sur un nombre variable d'octet ralentit les recherches, comparaisons, etc.

    Donc niveau performance, ça semble mieux d'utiliser latin1, non ?

    Oui mais dans 2 ans quand mon site aura un succès fou et que je voudrais en faire une version chinoise/russe/hébreux/klingon : est-ce qu'il sera facile de modifier toute ma base du latin1 vers l'utf8 sans corrompre mes données ?

    EDIT : et aussi, est-ce qu'il est possible d'avoir une base en latin1 et le site (apache/PHP) en utf8 ? Ou si je passe ma base en latin1 je suis OBLIGE de passer mon site en latin1.

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 7
    Points : 9
    Points
    9
    Par défaut
    Bonjour

    C'est avant tout une question de cohérence.
    Les problèmes d'hétérogénéité de codages c'est que pour que tout s'affiche correctement, il faut ... transformer les caractères d'un standard à l'autre! Et là question performance, c'est assez moyen.

    Il faut rester serein par rapport aux pertes de performances dans les recherches et les extractions... Tente de faire une ou deux requêtes d'extraction sous phpmyadmin et regarde le temps d'exécution... A moins d'avoir une très grosse base, ca ne doit pas aller bien loin... Alors franchement est ce la peine de se priver de ce qui tend à enfin devenir le standard : UTF8?

    Et non, ca ne sera pas ni facile, ni rapide, de convertir ta base de latin1 en UTF8 quand elle aura été remplie. Car quitte à devoir vérifier le contenu de ta base de données, autant le faire quand elle a le moins de données possibles!

    Mais quel que soit ton choix de toutes façons, il faut que tout soit sur le même mode : tes base de données, tes transactions SGBD, mais aussi tes pages web! (sinon on en revient au besoin de traduire!)

    Tu as d'ailleurs un excellent tuto d'info la dessus : Passez à l'UTF-8 sans manquer une étape

Discussions similaires

  1. Choix du charset pour encodage sans souci ?
    Par Doudy dans le forum Bibliothèques tierces
    Réponses: 0
    Dernier message: 26/06/2009, 12h24
  2. choix du charset
    Par looping dans le forum Débuter
    Réponses: 2
    Dernier message: 02/12/2008, 12h23
  3. CHARSET et COLLATE
    Par fredo78 dans le forum Requêtes
    Réponses: 1
    Dernier message: 15/09/2008, 11h44
  4. Choix du type de collation
    Par HwRZxLc4 dans le forum Outils
    Réponses: 4
    Dernier message: 21/09/2006, 13h44
  5. [Applicatio]Choix du charset à employer
    Par K-Kaï dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 13/07/2006, 11h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo