Différence entre Char et Varchar


Les deux sont des types de données dans de nombreux langages de programmation et systèmes de base de données où "char" se réfère à un caractère et "varchar" se réfère à un caractère variable. Char en C représente le type de caractère qui est utilisé pour stocker les valeurs des chaînes de caractères, principalement les caractères encodés UTF-8 et les entiers. Varchar, d'autre part, est un type de données qui peut contenir des données de n'importe quel type de longueur indéterminée. Varchar se réfère à un type de données d'un champ dans un système de gestion de base de données. Bien qu'ils puissent tous les deux stocker des valeurs de chaîne jusqu'à une longueur maximale de 8000 caractères, char nécessite plus de stockage que varchar. Techniquement, ils sont tous les deux utilisés pour stocker les mêmes types de données, mais ils diffèrent dans la façon dont ils sont stockés et récupérés. Voyons leurs différences en détail.

Qu'est-ce que Char?



Char est un type de données de longueur fixe qui est utilisé pour stocker des caractères non Unicode, d'où le nom (short for character). Il occupe un octet d'espace pour chaque caractère encodé sous forme de nombres - ceux de l'encodage ASCII. Le type char peut également être utilisé pour déclarer de petits entiers. Pour déclarer une variable de caractère, le mot-clé'char'est utilisé, ce qui signifie qu'un seul caractère est stocké dans un octet.

Comme les types entiers, char peut être signé ou non. Il peut contenir des valeurs de caractères signées allant de -128 à 127 et, selon la taille de l'architecture, il peut également être non signé, avec des valeurs allant de 0 à 255. Lorsque les valeurs de caractères sont stockées, elles sont remplies à droite avec des espaces jusqu'à la longueur spécifiée. Les espaces de fuite sont enlevés lorsqu'ils sont récupérés.

Par exemple, si vous déclarez une variable de type de données char (7), il faudra toujours 7 octets de données, que vous stockiez 1 caractère ou 7 caractères, ce qui signifie que vous pouvez stocker un maximum de 7 caractères dans la colonne.

Qu'est-ce que Varchar?



Varchar, comme son nom l'indique, est un type de données de longueur variable qui peut contenir n'importe quel type de données dont la longueur varie de 0 à 65 535. Le champ Varchar peut stocker des valeurs de n'importe quelle taille jusqu'à une certaine limite, selon la base de données. Il peut être défini soit en langage de programmation, soit au niveau de la base de données. La taille du champ varchar peut varier de zéro à la longueur maximale déclarée du champ.

Pour déclarer un caractère variable, le mot-clé'varchar'est utilisé. Varchar prend un espace variable, ce qui signifie qu'il utilisera seulement le nombre d'octets égal au nombre de caractères. Il permet d'éviter le gaspillage d'espace car il n'utilise que l'espace requis pour la taille de la corde. Dans certains langages de programmation et systèmes de bases de données, tout espace supplémentaire est automatiquement supprimé de la base de données.

Par exemple - si vous déclarez une variable de varchar (10), elle utilisera le nombre d'octets égal au nombre de caractères. Ainsi, si vous stockez un seul caractère, cela ne prendra qu'un seul octet et si vous stockez 10 caractères, cela prendra 10 octets, évitant ainsi le gaspillage d'espace dans la base de données.

  • Type de données

  • Char "est un type de données à longueur fixe qui est utilisé pour stocker la valeur de la chaîne de caractères d'une longueur fixe, tandis que" Varchar "est un type de données à longueur variable qui est utilisé pour stocker des données alphanumériques à longueur variable.

  • Taille de stockage

  • La taille de stockage de la valeur du caractère est égale à la taille maximale de cette colonne que vous déclarez lors de la création de la table. D'autre part, la taille de stockage de la valeur varchar est la longueur réelle des données saisies, et non la taille maximale pour cette colonne.

  • Entrées de données


  • Vous pouvez utiliser le caractère char lorsque les entrées de données d'une colonne sont censées avoir la même taille, alors qu'au contraire, varchar peut être utilisé lorsque les entrées de données d'une colonne sont censées varier en taille.

  • Allocation de mémoire

  • Char utilise l'allocation statique de mémoire tandis que varar utilise l'allocation dynamique de mémoire

  • Longueur

  • La longueur d'une variable char peut être de n'importe quelle valeur de 0 à 255, tandis que la longueur d'une variable varchar varie de 0 à 65 535.

  • Application

  • Les entrées de données sont cohérentes dans char qui est utilisé pour stocker des données comme les numéros de téléphone, tandis que varchar est utilisé pour stocker des données variables comme les adresses.

    • Char et Varchar sont des types de données dans les langages de programmation et les systèmes de bases de données qui partagent certains traits communs en termes de fonctionnalité et de technicité. Cependant, ils diffèrent considérablement de la façon dont ils sont stockés et récupérés.
    • Tandis que char se réfère à caractère, varchar se réfère à caractère variable. Comme son nom l'indique, char est un type de données à longueur fixe tandis que varchar est un type de données à longueur variable.
    • Char prend jusqu'à 1 octet par caractère, tandis que varchar prend également jusqu'à 1 octet par caractère plus 1 ou 2 octets supplémentaires pour stocker des informations de longueur. Pour le char, la longueur varie de 0 à 255 et pour le varchar, elle peut être comprise entre 0 et 65 535.
    • Comme le caractère est de longueur fixe, tout espace restant dans le champ est rempli de blancs. Varchar, d'autre part, est de longueur variable et ne contient donc que les caractères que vous lui affectez.
    • Les caractères restants sont remplis d'espaces blancs lorsque les valeurs sont stockées dans des champs'char', alors que'varchar' n'ajoute pas d'espaces supplémentaires lorsque vous fournissez moins de données que la longueur spécifiée.


    Une question ? Nous avons oublié quelque chose ? n'hésitez pas à participer aux commentaires. Nous compléterons cet article avec plaisir.

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *