tutorial - mysql workbench




Longueur maximale pour le texte de type MySQL (5)

Combien de caractères peut stocker un champ de texte de type?

Selon la Documentation Vous pouvez utiliser un maximum de 21 844 caractères si le jeu de caractères est UTF8

Si beaucoup, serais-je capable de spécifier la longueur dans le champ de type de texte db comme je le ferais avec varchar?

Vous n'avez pas besoin de spécifier la longueur. Si vous avez besoin de plus de caractères, utilisez les types de données MEDIUMTEXT ou LONGTEXT. Avec VARCHAR, la longueur spécifiée n'est pas pour l'exigence de stockage, c'est seulement pour la façon dont les données sont extraites de la base de données.

Je crée un formulaire pour envoyer des messages privés et je veux définir la valeur maxlength d'une zone de texte appropriée à la longueur maximale d'un champ de text dans ma table de base de données MySQL. Combien de caractères peut stocker un champ de texte de type?

Si beaucoup, serais-je capable de spécifier la longueur dans le champ de type de texte de base de données comme je le ferais avec varchar?


TINYTEXT 256 bytes
TEXT 65,535 bytes ~64kb
MEDIUMTEXT 16,777,215 bytes ~16MB
LONGTEXT 4,294,967,295 bytes ~4GB

TINYTEXT est un type de données chaîne pouvant stocker jusqu'à 255 caractères.

TEXT est un type de données chaîne pouvant stocker jusqu'à 65,535 caractères. TEXT est couramment utilisé pour les articles courts.

LONGTEXT est un type de données de chaîne d'une longueur maximale de 4,294,967,295 caractères. Utilisez LONGTEXT si vous avez besoin de stocker du texte volumineux, tel qu'un chapitre d'un roman.


TINYTEXT: 256 octets
TEXTE: 65 535 octets
MEDIUMTEXT: 16 777 215 octets
LONGTEXT: 4 294 967 295 octets


Voir pour les nombres maximum: http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html

TINYBLOB, TINYTEXT       L + 1 bytes, where L < 2^8    (255 Bytes)
BLOB, TEXT               L + 2 bytes, where L < 2^16   (64 Kibibytes)
MEDIUMBLOB, MEDIUMTEXT   L + 3 bytes, where L < 2^24   (16 Mebibytes)
LONGBLOB, LONGTEXT       L + 4 bytes, where L < 2^32   (4 Gibibytes)

L est le nombre d'octets dans votre champ de texte. Ainsi, le nombre maximmum de caractères pour le texte est de 2 16 -1 (en utilisant des caractères codés sur un octet). Signifie 65 535 caractères (en utilisant des caractères à un octet).

Codage UTF-8 / MultiByte : en utilisant l'encodage MultiByte, chaque caractère peut consommer plus de 1 octet d'espace. Pour l'UTF-8, la consommation d'espace est comprise entre 1 et 4 octets par caractère.


Type       | Approx. Length     | Exact Max. Length Allowed
-----------------------------------------------------------
TINYTEXT   | 256 Bytes          | 255 characters
TEXT       | 64  Kilobytes      | 65,535 characters
MEDIUMTEXT | 16  Megabytes      | 16,777,215 characters
LONGTEXT   | 4   Gigabytes      | 4,294,967,295 characters

Remarque: Si vous utilisez des caractères codés sur plusieurs octets, la colonne "Longueur maximale exacte autorisée" aura une longueur différente. Par exemple: si vous utilisez des caractères de 2 octets, la longueur maximale exacte pour TINYTEXT serait de 127 caractères. Fondamentalement, c'est le nombre d'octets autorisés -1.





database