Types de colonnes <<< |
Les types CHAR et VARCHAR | Les types BLOB et TEXT >>> |
12.4 Les types chaînes 12 Types de colonnes Manuel de Référence MySQL 4.1 : Version Française ->Les types CHAR et VARCHAR . Les types BLOB et TEXT . Le type ENUM . Le type SET |
12.4.1 Les types CHAR et VARCHARLes types CHAR et VARCHAR sont similaires, mais diffèrent dans la manière dont ils sont stockés et récupérés. La longueur d'une colonne CHAR est fixée à la longueur que vous avez défini lors de la création de la table. La longueur peut être n'importe quelle valeur entre 1 et 255. (Dans la version 3.23 de MySQL, la longueur est comprise entre 0 et 255.) Quand une valeur CHAR est enregistrée, elle est complété à droite avec des espaces jusqu'à atteindre la valeur fixée. Quand une valeur de CHAR est lue, les espaces en trop sont retirés. Les valeurs contenues dans les colonnes de type VARCHAR sont de tailles variables. Vous pouvez déclarer une colonne VARCHAR pour que sa taille soit comprise entre 1 et 255, exactement comme pour les colonnes CHAR . Par contre, contrairement à CHAR , les valeurs de VARCHAR sont stockées en utilisant autant de caractères que nécessaire, plus un octet pour mémoriser la longueur. Les valeurs ne sont pas complétées. Au contraire, les espaces finaux sont supprimés avant stockage (ce qui ne fait pas partie des spécifications ANSI SQL).Si vous assignez une chaîne de caractères qui dépasse la capacité de la colonne CHAR ou VARCHAR , celle ci est tronquée jusqu'à la taille maximale du champ. Le tableau suivant illustre les différences entre les deux types de colonnes en montrant les différences entre l'enregistrement dans une colonne CHAR(4) ou VARCHAR(4) :
Les valeurs dans les colonnes CHAR et VARCHAR sont classées et comparées sans tenir compte de la casse, à moins que l'attribut BINARY n'ai été spécifié lors de la création de la table. L'attribut BINARY signifie que les valeurs sont classées et triées en tenant compte de la casse, suivant l'ordre des caractères ASCII de la machine ou est installé le serveur MySQL. BINARY n'affecte pas les méthodes de lecture et de stockage des valeurs. L'attribut BINARY se propage dans une expression : il suffit qu'une seule colonne, utilisée dans une expression, ait l'attribut BINARY pour que toute l'expression ne tienne plus compte de la casse.MySQL peut changer automatiquement le type d'une colonne CHAR ou VARCHAR lors de la création de la table. Changement de type de colonne automatique . |
<< | Les types CHAR et VARCHAR | >> |
Types de colonnes | Les types chaînes | Les types BLOB et TEXT |