Les types chaînes
<<<
Capacités des colonnes Choisir le bon type de colonne
>>>

12 Types de colonnes
 Manuel de Référence MySQL 4.1 : Version Française

Introduction aux types de colonnes
Types numériques
Les types date et heure
Les types chaînes
->Capacités des colonnes
Choisir le bon type de colonne
Utilisation des types de données issues d'autres SGBDR

12.5 Capacités des colonnes

Les capacités de stockage de chaque type de colonnes de MySQL sont listés par catégories.

Capacités de stockage des colonnes numériques
Type de colonne Espace requis
TINYINT 1 octet
SMALLINT 2 octets
MEDIUMINT 3 octets
INT , INTEGER 4 octets
BIGINT 8 octets
FLOAT(p) 4 if X <= 24 or 8 if 25 <= X <= 53
FLOAT 4 octets
DOUBLE PRECISION , REAL 8 octets
DECIMAL(M,D) M+2 octets si D > 0, M+1 octets si D = 0 ( D +2, si M < D )

Capacités de stockage des colonnes de temporelles
Type de colonne Espace requis
DATE 3 octets
DATETIME 8 octets
TIMESTAMP 4 octets
TIME 3 octets
YEAR 1 octet
Capacités de stockage des colonnes de texte
Type de colonne Espace requis
CHAR(M) M octets, 1 <= M <= 255
VARCHAR(M) L +1 octets, avec L <= M et 1 <= M <= 255
TINYBLOB , TINYTEXT L +1 octets, avec L < 2^8
BLOB , TEXT L +2 octets, avec L < 2^16
MEDIUMBLOB , MEDIUMTEXT L +3 octets, avec L < 2^24
LONGBLOB , LONGTEXT L +4 octets, avec L < 2^32
ENUM('valeur1','valeur2',...) 1 ou 2 octets, suivant le nombre d'éléments de l'énumération (65535 au maximum)
SET('valeur1','valeur2',...) 1, 2, 3, 4 ou 8 octets, suivant le nombre de membres de l'ensemble (64 au maximum)
Les types VARCHAR , BLOB et TEXT sont de longueur variable, et l'espace disque requis dépend de la taille réelle de la valeur présente dans la colonne, (taille représentée par L dans le tableau précédent) et non pas de la taille maximale de la colonne. Par exemple une colonne VARCHAR(10) peut contenir une chaîne de 10 caractères. L'espace requis est dans ce cas là la longueur de la chaîne ( L ), plus 1 octet pour enregistrer la longueur de celle ci. Pour la chaîne 'abcd' , L est égal à 4 et l'espace requis est de 5 octets.

Les types BLOB et TEXT requièrent 1, 2, 3, ou 4 octets pour mémoriser la taille de la valeur dans la colonne, suivant la longueur maximale du type. Les types BLOB et TEXT .

Si une table inclus au moins une colonne de taille variable, la ligne sera de taille variable. Notez que lorsqu'une table est créée, MySQL peut, dans certaines circonstances, changer automatiquement une colonne de taille variable en colonne à taille fixe (et vice-versa). Changement de type de colonne automatique .

La taille d'un ENUM est déterminée par le nombre d'éléments de l'énumération. Un octet est nécessaire pour les énumérations ayant jusqu'à 255 valeurs possibles. Deux octets sont nécessaires pour les énumérations ayant jusqu'à 65535 valeurs possibles. Le type ENUM .

La taille d'un SET est déterminé par le nombre de ses membres. Si il y en a N , l'objet occupe (N+7)/8 octets, arrondis à 1, 2, 3, 4, or 8 octets. Un SET peut avoir au plus 64 membres. Le type SET .

La taille maximale d'une ligne dans une table MyISAM est de 65534 octets. Les colonnes BLOB et TEXT acceptent jusqu'à 5-9 octets en dessous de cette taille.

<< Capacités des colonnes >>
Les types chaînes Types de colonnes Choisir le bon type de colonne