Différence entre VARCHAR et CHAR dans MySQL

Preet Sanghavi 28 mars 2022
Différence entre VARCHAR et CHAR dans MySQL

Ce tutoriel présentera les différences entre varchar et char dans MySQL.

Certains des points clés pour chacun sont les suivants.

CAR

  • CHAR est un type de données à espace fixe qui prend en charge les chaînes.
  • Les espaces vides ou restants dans le texte ou la chaîne sont remplacés par des blancs ou des espaces.
  • CHAR prend une taille d’un octet pour chaque caractère dans la chaîne ou le texte d’entrée.
  • Ainsi, nous pouvons dire que si nous définissons CHAR(100), il tiendra la taille de 100 bits quelle que soit la longueur de la chaîne ou le nombre de caractères.

VARCHAR(M)

  • VARCHAR a une taille modifiable avec un maximum de 65535 caractères. L’utilisateur devra spécifier une longueur comprise entre 1 et 65535 caractères.
  • De plus, VARCHAR prend x + 1 octets d’espace sur le disque où le nombre total de caractères est inférieur ou égal à 255. Et il prend x + 2 octets d’espace sur le disque où le nombre total de caractères est supérieur ou égal à 256 caractères et inférieur à 65535 caractères.
  • Enfin, VARCHAR peut faire partie d’un index.

Ainsi, nous pouvons résumer les principales différences : varchar n’est pas de longueur fixe, tandis que char est de longueur fixe ou de taille fixe.

En pratique, nous pouvons supposer que l’utilisation de varchar est préférable à l’utilisation du type de données char. La raison derrière cette hypothèse est que beaucoup d’espace peut être économisé avec le type de données varchar.

Prenons un exemple pour se rendre compte de l’avantage de varchar.

Disons que nous définissons un char comme char(25) et stockons la valeur de chaîne comme Preet. D’autre part, définissons une autre colonne avec le type de données est varchar avec une valeur de chaîne de caractères comme Preet.

Même si ces colonnes avec différents types de données ont la valeur Preet, varchar ne consommera que 5 bits, tandis que char consommera la totalité des 25 tailles de bits prédéfinies. Le reste de l’espace vide est rempli avec des blancs char.

Cet avantage de varchar peut être énorme dans les environnements de production où le stockage est un gros problème. De plus, si nous utilisons varchar, nous n’avons pas à nous soucier de la taille de notre chaîne dépassant une valeur de bit prédéfinie.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub