Un jeu de caractères est un ensemble de symboles et de codes. Une collation est un ensemble de règles permettant la comparaisons de caractères dans un jeu. Pour rendre ces définitions plus concrètes, voici un exemple avec un alphabet imaginaire.
Supposons que nous avons un alphabet de 4 lettres :
‘A
’,
‘B
’,
‘a
’,
‘b
’. Nous assignons à chaque
lettre un nombre comme ceci : ‘A
’
= 0, ‘B
’ = 1,
‘a
’ = 2,
‘c
’ = 3. La lettre
‘A
’ est un symbole, le chiffre 0
est le code de
‘A
’, et la combinaison des quatre
lettres et de leur code forme le jeu de
caractères.
Maintenant, supposons que nous voulions comparer deux chaînes de
caractères : ‘A
’ et
‘B
’. Le plus simple pour cela est
de regarder leurs codes : 0 pour
‘A
’ et 1 pour
‘B
’, et comme 0 est inférieure à
1, nous pouvons dire que ‘A
’ est
plus petit que ‘B
’. Ce que nous
venons de faire est une collation pour notre jeu de caractères.
la collation est un ensemble de règle, qui se résume à ceci
dans notre cas : ``compare les codes''. Cette règle est la plus
simple collation binaire.
Si nous devons différentier les majuscules des minuscules, nous
aurons au moins deux règles : (1) traiter les minuscules
‘a
’ et
‘b
’ comme des équivalents de
‘A
’ et
‘B
’; (2) puis comparer leurs codes
respectifs. Nous appelons cette règle une collation
sensible à la casse. C'est un
peu plus complexe que la règle précédente.
En réalité, la plupart des jeux de caractères ont de nombreux
caractères : ce n'est pas simplement
‘A
’ et
‘B
’ mais des alphabets entiers, ou
des systèmes d'écriture orientaux avec des milliers de
caractères, incluant des caractères spéciaux et la ponctuation.
Dans la vraie vie, une collation a de très nombreuses règles,
concernant la sensibilité à la casse ou encore l'insensibilité
aux accents (un accent est une marque attachée aux lettres comme
le ‘Ö
’) allemand) et les
caractères multiples comme le e dans l'o
‘œ
’ =
‘oe
’ de l'une des deux collations
allemandes.
MySQL 4.1 peut faire cela pour vous :
Stocker des chaînes dans différents jeux de caractères
Comparer des chaînes à l'aide de différentes collations
Mélanger différents jeux de caractères et collations sur le même serveur, la même base ou même la même table.
Permettre la spécification du jeu de caractère et de la collation à n'importe quel niveau
Sous cet angle, MySQL 4.1 est bien plus souple que MySQL 4.0 et que les autres bases de données. Mais, pour pouvoir utiliser ces nouvelles fonctionnalités, vous devez savoir quels sont les jeux de caractères et les collations disponibles, comment les modifier ou comment les utiliser avec les opérateurs.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.