Jeu de caractères MySQL
Quel est le jeu de caractères ?
Afin de mieux reconnaître le chinois, le japonais, l'anglais et le grec. Les symboles couramment utilisés sont codés, et cet encodage est le jeu de caractères.
Le jeu de caractères détermine la manière dont le texte est stocké.
Le jeu de caractères est équivalent au langage humain dans l'ordinateur.
Par exemple :
Je parle anglais, donc lorsque je l'enregistre, je dois utiliser du texte anglais pour le stocker.
Si je parle en chinois et que j'utilise des caractères anglais pour le stocker. Ensuite, les gens ne peuvent pas le lire ou le comprendre, c’est ce que nous appelons du charabia.
Parce qu'il y a trop de jeux de caractères, assez pour en avoir des dizaines ou des centaines. Nous n'avons donc pas besoin d'en savoir beaucoup sur les jeux de caractères, ni même sur la façon dont les jeux de caractères sont compilés en caractères visibles par l'homme.
Connaissance clé des jeux de caractères
Nous avons seulement besoin de savoir :
- Jeux de caractères courants
- Quel jeu de caractères utilisons-nous dans la base de données
Jeu de caractères anglais :
字符集 | 说明 | 字节长度 |
---|---|---|
ASCII | 美国标准信息交换代码 | 单字节 |
GBK | 汉字内码扩展规范 | 双字节 |
unicode | 万国码 | 4字节 |
UTF-8 | Unicode的可变长度字符编码 | 1到6个字节 |
ASCII
Le code ASCII utilise une combinaison de nombres binaires spécifiée de 7 ou 8 bits pour représenter 128 ou 256 caractères possibles. Le code ASCII standard, également appelé code ASCII de base, utilise des nombres binaires de 7 bits pour représenter toutes les lettres majuscules et minuscules, les chiffres de 0 à 9, les signes de ponctuation et les caractères de contrôle spéciaux utilisés en anglais américain.
Parmi eux :
0~31 et 127 (33 au total) sont des caractères de contrôle ou des caractères spécifiques à la communication (les autres sont des caractères affichables), tels que les caractères de contrôle : LF (saut de ligne), CR (retour chariot ), FF ( Saut de page), DEL (suppression), BS (retour arrière), BEL (sonnerie), etc. Caractères spéciaux de communication : SOH (tête de texte), EOT (fin de texte), ACK (confirmation), etc. .; Les valeurs ASCII sont 8, 9, 10 et 13 sont respectivement converties en caractères de retour arrière, de tabulation, de saut de ligne et de retour chariot. Ils n'ont pas d'affichage graphique spécifique, mais auront des effets différents sur l'affichage du texte selon l'application.
32~126 (95 au total) sont des caractères (32 est un espace), dont 48~57 sont dix chiffres arabes de 0 à 9.
Les nombres 65 à 90 sont 26 lettres anglaises majuscules, les chiffres 97 à 122 sont 26 lettres anglaises minuscules, et le reste est constitué de signes de ponctuation, de symboles arithmétiques, etc.
GBK
GBK est rétrocompatible avec l'encodage GB 2312. Il s'agit d'une spécification de codage informatique de caractères chinois définie par la République populaire de Chine. La version antérieure est GB2312.
Unicode
Unicode (Unicode, Universal Code, Unicode) Unicode est un système de codage de caractères développé par des organisations internationales qui peut s'adapter à tous les textes et symboles du monde. Pour répondre aux exigences de conversion et de traitement de texte multilingue et multiplateforme.
UTF-8
est un codage de caractères de longueur variable pour Unicode, et c'est également un code universel. Parce qu'UNICODE prend deux fois plus d'espace que l'ASCII et que l'octet de poids fort 0 n'est d'aucune utilité pour l'ASCII. Afin de résoudre ce problème, certains jeux de caractères de format intermédiaire sont apparus. Ils sont appelés formats de conversion universels, c'est-à-dire UTF (Universal Transformation Format)
L'encodage à utiliser dans le travail réel
Les jeux de caractères couramment utilisés en chinois sont divisés en utf-8 et GBK.
Ceux qui sont actuellement utilisés sont les suivants :
字符集 | 说明 |
---|---|
gbk_chinese_ci | 简体中文, 不区分大小写 |
utf8_general_ci | Unicode (多语言), 不区分大小写 |
En observant les caractéristiques de (Figure 1), vous constaterez que le jeu de caractères MySQL se compose de trois parties :
1. set
2. Language
3. Type
Le dernier bac fait référence au jeu de caractères binaires, et le ci suivant fait référence aux caractères insensibles à la casse lors du stockage et du tri.
Remarque :
Lorsque MySQL écrit utf-8, il écrit utf8. N'ajoutez pas la ligne horizontale médiane.
(Photo 1)