Maison > base de données > tutoriel mysql > le corps du texte

Quelle est la longueur maximale d'une colonne MySQL VARCHAR ?

王林
Libérer: 2023-08-24 11:49:07
avant
1170 Les gens l'ont consulté

MySQL VARCHAR 列的最大长度是多少?

En fait, le type de données VARCHAR stocke les données de caractères de longueur variable en caractères à un ou plusieurs octets. La syntaxe de ce type de données est VARCHAR(n), où n est le nombre maximum de caractères qui doivent être spécifiés lors de la création de la table. Avant MySQL 5.03, la valeur de n pouvait être comprise entre 0 et 255, mais dans MySQL 5.03 et versions ultérieures, la valeur pouvait être comprise entre 0 et 65 535.

Le nombre maximum de caractères stockés dans un VARCHAR dépend de la taille maximale de la ligne et du jeu de caractères utilisé. Si nous utilisons le jeu de caractères ASCII, il peut stocker 65 535 caractères car ASCII utilise 1 octet par caractère. D'un autre côté, si nous utilisons le jeu de caractères utf8, la limite de caractères sera de 21 844 car utf8 utilisera 3 octets par caractère. La limite maximale de taille de ligne est de 65 535 octets, ce qui signifie qu’en incluant toutes les colonnes, la taille de ligne ne doit pas dépasser 65 535 octets.

Exemple

mysql> Create Table var_test(FName Varchar(32765) NOT NULL, LName Varchar(32766)
       NOT NULL);
       Query OK, 0 rows affected (0.25 sec)
Copier après la connexion

La requête ci-dessus crée une table avec deux colonnes : FName Varchar(32765) et LName Varchar(32766). La longueur totale est donc de 32 765+2+32 766+2=65 535 (en utilisant 2 octets par colonne pour stocker la longueur).

mysql> Create Table var_test1(FName varchar(32766) NOT NULL, LName Varchar(32766)
       NOT NULL);
       ERROR 1118 (42000): Row size too large. The maximum row size for the used
       table
       type, not counting BLOBs, is 65535. You have to change some columns to TEXT
       or BLOBs
Copier après la connexion

Maintenant, MySQL renverra une erreur lorsque la longueur est augmentée de 1 octet, comme indiqué dans la requête ci-dessus.

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!

source:tutorialspoint.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!