Services webmasters
Partenaires
Jeux concours gratuits
 
Langue des messages d'erreurs
<<<
Ajouter un nouveau jeu de caractères Le tableau de définition des caractères
>>>

4.6 Localisation de MySQL et utilisation internationale
4 Administration du serveur
 Manuel de Référence MySQL 4.1 : Version Française

Le jeu de caractères utilisé pour les données et le stockage
Langue des messages d'erreurs
->Ajouter un nouveau jeu de caractères
Le tableau de définition des caractères
Support d'assemblage des chaînes
Support des caractères multi-octets
Problèmes avec les jeux de caractères

4.6.3 Ajouter un nouveau jeu de caractères

Pour ajouter un autre jeu de caractères à MySQL, utilisez la procédure suivante.

Décidez s'il s'agit d'un jeu simple ou complexe. Si le jeu de caractères n'a pas besoin d'utiliser des routines d'assemblage de chaînes spéciales pour le tri et n'a pas besoin du support des jeux de caractères multi-octets, il est simple. S'il a besoin de l'une de ces deux fonctionnalités, il est complexe.

Par exemple, latin1 et danish sont des jeux de caractères simples tandis que big5 et czech sont complexes.

Dans la section suivante, nous supposons que vous nommez votre jeu de caractères MONJEU .

Pour un jeu de caractères simple, effectuez ce qui suit :

  • Ajoutez MONJEU à la fin du fichier sql/share/charsets/Index Assignez-lui un nombre unique.
  • Créez le fichier sql/share/charsets/MONJEU.conf . (Vous pouvez vous inspirer de sql/share/charsets/latin1.conf .)La syntaxe pour le fichier est très simple :
    • Les commentaires commencent avec le caractère '#' et se terminent à la fin de la ligne.
    • Les mots sont séparés par un nombre changeant d'espaces blancs.
    • Lors de la définition d'un jeu de caractères, chaque mot doit être un nombre au format hexadécimal.
    • Le tableau ctype prends les 257 premiers mots. Les tableaux to_lower[] , to_upper[] et sort_order[] prennent chacun 256 mots après cela.
    Les tableaux de définition des caractères .
  • Ajoutez le nom du jeu de caractères aux listes CHARSETS_AVAILABLE et COMPILED_CHARSETS dans configure.in .
  • Reconfigurez, recompilez et testez.

Pour un jeu de caractères complexe faites ce qui suit :

  • Créez le fichier strings/ctype-MONJEU.c dans la distribution des sources MySQL.
  • Ajoutez MONJEU à la fin du fichier sql/share/charsets/Index . Assignez-lui un nombre unique.
  • Regardez un des fichiers ctype-*.c existant pour voir ce qui doit être défini, par exemple, strings/ctype-big5.c . Notez que les tableaux dans votre fichier doivent avoir des noms tels que ctype_MONJEU , to_lower_MONJEU , etc. Cela correspond aux tableaux dans les jeux de caractères simples. Les tableaux de définition des caractères . Pour un jeu de caractère complexe
  • Au début du fichier, placez un commentaire spécial comme celui-ci :
    
    /*
    * This comment is parsed by configure to create ctype.c,
    * so don't change it unless you know what you are doing.
    *
    * .configure. number_MONJEU=MYNUMBER
    * .configure. strxfrm_multiply_MONJEU=N
    * .configure. mbmaxlen_MONJEU=N
    */
    Le programme configure utilise ce commentaire pour inclure automatiquement le jeu de caractères dans la librairie MySQL.

    Les lignes strxfrm_multiply et mbmaxlen seront expliquées dans les sections suivantes. Ne les incluez que si vous avez besoin des fonctions d'assemblage des chaînes ou des fonctions de jeu de caractères multi-octets, respectivement.

  • Vous devez alors créer les fonctions suivantes :
    • my_strncoll_MONJEU()
    • my_strcoll_MONJEU()
    • my_strxfrm_MONJEU()
    • my_like_range_MONJEU()
    Support d'assemblage de chaînes .
  • Ajoutez le nom du jeu de caractères aux listes CHARSETS_AVAILABLE et COMPILED_CHARSETS dans configure.in .
  • Reconfigurez, recompilez et testez.
Le fichier sql/share/charsets/README fournit plus d'instructions.

Si vous voulez qu'un jeu de caractères soit ajouté dans la distribution MySQL, envoyez un patch à internals@lists.mysql.com .

<< Ajouter un nouveau jeu de caractères >>
Langue des messages d'erreurs Localisation de MySQL et utilisation internationale Le tableau de définition des caractères
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -