Maison  >  Article  >  base de données  >  Combien d'octets le chinois occupe-t-il dans MySQL ?

Combien d'octets le chinois occupe-t-il dans MySQL ?

青灯夜游
青灯夜游original
2020-10-07 13:17:1811110parcourir

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 ?

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

  • UTF8 peut être considéré comme un grand jeu de caractères, qui contient l'encodage de la plupart du texte.

  • L'un des avantages de l'utilisation d'UTF8 est que les utilisateurs d'autres régions (telles que Hong Kong et Taiwan) peuvent afficher votre texte normalement sans caractères tronqués sans installer la prise en charge du chinois simplifié.

Résumé :

gb2312 est le code du chinois simplifié

gbk prend en charge le chinois simplifié et le chinois traditionnel

big5 prend en charge le chinois traditionnel

utf8 prend en charge presque tous les caractères

Tutoriel recommandé :

tutoriel vidéo MySQL

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn