Différence entre VARCHAR et TEXT dans MySQL
Nous discuterons des différences entre VARCHAR et TEXT dans MySQL dans cet article. Certaines des principales différences sont les suivantes.
MySQL TEXT
TEXTpossède une taille maximale définie de 65535 caractères. Ici, nous ne pouvons pas éditer ou manipuler cette valeur.- Il prend
x + 2bits d’espace sur le disque. Ici,xreprésente la taille de la chaîne considérée. - Une autre caractéristique clé de
TEXTest qu’il ne peut pas faire entièrement partie d’un index. Cela signifie que l’utilisateur devrait définir une longueur.
MySQL VARCHAR(M)
VARCHARa une taille modifiable avec un maximum de 65535 caractères. Cela signifie que l’utilisateur devra spécifier une longueur comprise entre 1 et 65535 caractères.- De plus,
VARCHARprendx + 1octets d’espace dans le disque où le nombre total de caractères est inférieur ou égal à 255. Et il prendx + 2octets d’espace dans le disque où le nombre total de caractères est supérieur ou égal à 256 caractères et inférieur ou égal à 65535 caractères. - Enfin,
VARCHARpeut faire partie d’un index.
Certaines autres différences peuvent être comprises comme suit :
Une autre distinction est que vous ne pouvez pas créer d’index sur une colonne TEXT (sauf pour un index en texte intégral).
Vous devez utiliser VARCHAR si vous souhaitez que la colonne ait un index. Mais gardez à l’esprit que la longueur d’un index est limitée, donc si votre colonne VARCHAR est trop grande, vous ne devrez utiliser que les premiers caractères de votre index.
Cependant, si vous savez que la longueur maximale de la chaîne d’entrée possible n’est que de 65535, vous devez utiliser VARCHAR. Par exemple, un numéro de téléphone, un nom ou quelque chose de similaire. Ensuite, au lieu de TINYTEXT ou TEXT, vous pouvez utiliser VARCHAR(30), et si quelqu’un essaie de stocker le texte de l’intégralité du livre de Sapiens dans votre base de données, seuls les 30 premiers caractères seront enregistrés.
Par conséquent, à l’aide de ce tutoriel, nous pouvons réaliser les principales différences entre VARCHAR et TEXT dans la base de données MySQL.
