Longueur de l'index MySQL VARCHAR
Les tables MySQL ont une longueur d'index maximale de 767 octets. Ceci est par colonne, donc un index composite ne peut pas dépasser 767 octets au total. Cependant, il existe quelques exceptions à cette règle :
Dans votre cas précis :
L'index que vous avez créé n'est pas utilisé car il dépasse la longueur maximale de l'index de 767 octets. En effet, MySQL suppose 3 octets par caractère UTF-8 et 512 caractères * 3 octets/caractère = 1 536 octets.
Pour résoudre ce problème, vous pouvez :
Réduisez la longueur de l'index à 255 caractères ou less.
ALTER TABLE products ADD INDEX (name(255));
Activez l'option de configuration innodb_large_prefix et utilisez le format de ligne DYNAMIQUE ou COMPRESSÉ.
SET innodb_large_prefix = ON; ALTER TABLE products ROW_FORMAT=COMPRESSED;
Supplémentaire Remarques :
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!