| Précédent | Table des matière | Suivant |
![]() | ![]() |
Dans certains cas, MySQL spontanément les spécifications d'une colonne lors d'une commande de CREATE TABLE (Cela peut aussi intervenir lors d'une commande with ALTER TABLE.)
VARCHAR d'une longueur de moins de 4 caractères sont changées en CHAR.
VARCHAR, TEXT or BLOB), toutes les colonnes de type CHAR et de longueur supérieur à 3 caractères sont changées en colonne de type VARCHAR .Cela ne change en rien l'utilisation de ces colonnes, cela modifie simplement la façon dont les colonnes sont stockées. MySQL effectue cette conversion car cela économise de la place, et rend les opérations sur la table plus rapides.
TIMESTAMP doit être pair et compris dans l'intervalle de 2 à 14. En dehors de l'intervalle 2 à 14, la taille de l'affichage est ramenée à 14. En cas de nombre impair, le nombre est arrondi au nombre pair directement supérieur.
NULL dans une colonne de type TIMESTAMP, car une telle affectation revient à assigner la date et l'heure courante à la colonne. De ce fait, les attributs NULL et NOT NULL ne s'appliquent pas aux colonnes de type TIMESTAMP, et sont ignorés. Lors d'une requête DESCRIBE Nom_table MySQL répondra toujours que la colonne accepte les valeurs de type NULL.
Pour savoir si MySQL a modifié spontanément le type d'une colonne, il faut utiliser la requête DESCRIBE Nom_table après la création ou la modification de la table.
Certaines autres modifications de type peuvent intervenir lors de la compression de table avec la commande pack_isam.
Confère section 10.17 Quel sont les différents formats de lignes? Quand utiliser VARCHAR/CHAR?.