Dans mysql, le nombre d'octets occupés par un caractère chinois est lié au format d'encodage : s'il s'agit d'un encodage GBK, un caractère chinois occupe 2 octets ; s'il s'agit d'un encodage UTF8, un caractère chinois occupe 3 octets ; , tandis que les lettres anglaises occupent 1 octet.
Combien d'octets le chinois occupe-t-il dans MySQL ?
1. Le nombre d'octets qu'un caractère chinois occupe est lié à l'encodage :
UTF8 : Un caractère chinois = 3 octets
GBK : un caractère chinois = 2 octets
utf-8, lettres anglaises 1 octet
2. Combien de caractères chinois varchar(n) peut-il stocker ?
varchar(n) représente n caractères. Indépendamment des caractères chinois ou anglais, Mysql peut stocker n caractères. Seule la longueur réelle en octets est différente
3. Comment fonctionne-t-il. MySQL vérifie la longueur (nombre d'octets occupés) ?
La fonction de longueur disponible en langage SQL :
select LENGTH(fieldname) from tablename
Description :
UTF-8 : Format de transformation Unicode-8bit , la nomenclature est autorisée, mais la nomenclature n'est généralement pas incluse. Il s'agit d'un codage multi-octets utilisé pour résoudre les caractères internationaux. Il utilise 8 bits (soit un octet) pour l'anglais et 24 bits (trois octets) pour le chinois. UTF-8 contient des caractères nécessaires à tous les pays du monde. Il s'agit d'un codage international doté d'une grande polyvalence. Le texte codé en UTF-8 peut être affiché sur les navigateurs de divers pays prenant en charge le jeu de caractères UTF8. Par exemple, s'il s'agit d'un encodage UTF8, le chinois peut également être affiché sur l'IE anglais des étrangers, et ils n'ont pas besoin de télécharger le package de prise en charge de la langue chinoise d'IE.
GBK est une norme basée sur la norme nationale GB2312 et étendue pour être compatible avec GB2312. Le codage de texte de GBK est représenté par des octets doubles, c'est-à-dire que les caractères chinois et anglais sont représentés par des octets doubles. Afin de distinguer les caractères chinois, les bits les plus élevés sont définis sur 1. GBK contient tous les caractères chinois et constitue un codage national. Il est moins polyvalent que UTF8, mais UTF8 occupe une base de données plus grande que GBD.
GBK, GB2312, etc. doivent être convertis en UTF8 via l'encodage Unicode :
GBK, GB2312-->Unicode-->UTF8
UTF8- -> ;Unicode-->GBK, GB2312
GB2312 est un sous-ensemble de GBK, GBK est un sous-ensemble de GB18030
GBK est un grand jeu de caractères comprenant des caractères chinois, japonais et coréens
Afin d'éviter tous les caractères tronqués, UTF-8 devrait être utilisé. Il sera également très pratique de prendre en charge l'internationalisation à l'avenir
Résumé :
gb2312 est le code du chinois simplifiégbk prend en charge le chinois simplifié et le chinois traditionnelbig5 prend en charge le chinois traditionnelutf8 prend en charge presque tous les caractèresTutoriel recommandé :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!