Maison >base de données >tutoriel mysql >Quel est l'équivalent MySQL de varchar(max) ?
Explorer l'équivalent de varchar(max) dans MySQL
MySQL n'offre pas d'équivalent explicite au varchar(max) type de données utilisé dans d'autres systèmes de bases de données. Cependant, il existe des moyens d'obtenir des fonctionnalités similaires dans les limites de MySQL.
Limites de taille de VARCHAR
Par défaut, la longueur maximale d'un VARCHAR Le champ dans MySQL contient 255 caractères. Pour étendre cette limite, nous pouvons utiliser la syntaxe VARCHAR(length). Cependant, cette longueur est toujours soumise à la taille maximale des lignes dans MySQL, qui est de 64 Ko (hors BLOB).
Par exemple :
VARCHAR(65535)
Cela créera un VARCHAR champ d'une longueur maximale de 65535 caractères.
Jeu de caractères Considérations
Les jeux de caractères multi-octets, tels que UTF8, réduisent la longueur effective des champs VARCHAR. En UTF8, chaque caractère peut occuper plusieurs octets de stockage. Cela signifie que la longueur maximale réelle d'un champ VARCHAR utilisant UTF8 sera plus petite :
VARCHAR(21844) CHARACTER SET utf8
Exemples de limitations de longueur VARCHAR
Le Le calcul de la taille maximale des lignes doit inclure la surcharge de stockage pour l'encodage de longueur VARCHAR, de sorte que la longueur maximale que vous pouvez declare est légèrement inférieure à la taille maximale des lignes.
CREATE TABLE foo ( v VARCHAR(65534) ); ERROR 1118 (42000): Row size too large...
Cependant, réduire légèrement la longueur permet de créer la table :
CREATE TABLE foo ( v VARCHAR(65532) ); Query OK, 0 rows affected...
L'utilisation d'un jeu de caractères multi-octets réduit encore la longueur maximale en raison de l'espace de stockage plus grand requis pour chaque caractère :
CREATE TABLE foo ( v VARCHAR(65532) ) CHARSET=utf8; ERROR 1074 (42000): Column length too big for...
En conclusion, alors que MySQL n'a pas d'équivalent exact à varchar(max), le type de données VARCHAR(length) fournit un moyen d'accepter des valeurs de texte volumineuses dans les limites de la taille maximale des lignes et du jeu de caractères utilisé.
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!