Différence entre char et varchar

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 au caractère et «varchar» se réfère au caractère variable. Char in C représente le type de caractères utilisé pour stocker les valeurs de chaîne, principalement des caractères et des entiers codés UTF-8. Varchar, d'autre part, est un type de données qui peut contenir des données de tout type de longueur indéterminée. Varchar fait référence à 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 8 000 caractères, Char nécessite plus de stockage que Varchar. Techniquement, ils sont tous 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. Jetons un coup d'œil à 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 Unicodes, d'où le nom (abréviation de caractère). Il occupe un octet d'espace pour chaque personnage qui est codé comme des nombres - ceux du codage ASCII. Le type de char peut également être utilisé pour déclarer les 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 signé. Il peut contenir des valeurs CAR signées allant de -128 à 127 et en fonction de la taille architecturale, il peut également être non signé, des valeurs de détention allant de 0 à 255. Lorsque les valeurs de char sont stockées, elles sont à droite avec des espaces à la longueur spécifiée. Les espaces de fuite sont supprimés lorsqu'ils sont récupérés.

Par exemple - si vous déclarez une variable du type de données Char (7), il faudra toujours 7 octets de données, que vous stockiez 1 ou 7 caractères de 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 tout type de données avec la longueur variant de 0 à 65 535. Varchar Field 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 dans les langages de programmation, soit au niveau de la base de données. La taille du champ Varchar peut être de zéro à la longueur maximale du champ déclaré.

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

Par exemple - si vous déclarez une variable de Varchar (10), il utilisera le nombre d'octets égaux au nombre de caractères. Donc, si vous ne stockez qu'un seul personnage, cela ne prendra qu'un seul octet et si vous stockez 10 caractères, il faudra 10 octets, évitant ainsi le gaspillage d'espace de base de données.

Différence entre char et varchar

  1. Type de données

«Char» est un type de données de longueur fixe qui est utilisé pour stocker la valeur de chaîne de caractères de longueur fixe, tandis que «varchar» est un type de données de longueur variable qui est utilisé pour stocker des données alphanumériques de longueur variable.

  1. Taille de stockage

La taille de stockage de la valeur de caractère est égale à la taille maximale de cette colonne que vous déclarez lors de la création du tableau. D'un autre côté, la taille de stockage de la valeur varchar est la longueur réelle des données entrées, et non la taille maximale de cette colonne.

  1. Entrées de données

Vous pouvez utiliser du char lorsque les entrées de données dans une colonne devraient être de la même taille, tandis que le contraire peut être utilisé lorsque les entrées de données dans une colonne devraient varier en taille.

  1. Allocation de mémoire

Char utilise une allocation de mémoire statique tandis que Varchar utilise une allocation de mémoire dynamique

  1. Longueur

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

  1. Application

Les entrées de données sont cohérentes dans le 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 VS. Varchar

Carboniser Varchar
Utilisé pour stocker la valeur de chaîne de caractères de la longueur fixe. Utilisé pour stocker les données alphanumériques de longueur variable.
La longueur varie de 0 à 255. La longueur varie de 0 à 65 535.
Prend 1 octet par caractère pour le stockage. Prend 1 octet par caractère plus 1 ou 2 octets supplémentaires pour stocker des informations de longueur.
La taille de stockage de Char est la même que celle déclarée. La taille de stockage de Varchar dépend de la chaîne spécifique stockée.
Utilise une allocation de mémoire statique. Utilise une allocation de mémoire dynamique.
Le char doit être utilisé lorsque la longueur de la variable est connue. Varchar ne doit être utilisé que lorsque la longueur de la variable n'est pas connue.
Il accepte uniquement les personnages. Il accepte à la fois les personnages et les nombres.
C'est 50% plus rapide que Varchar. C'est plus lent que Char.
La taille de stockage de la valeur char est égale à la taille maximale de la colonne. La taille de stockage de la valeur varchar est égale à la longueur réelle des données entrées, et non à la taille maximale de la colonne.

Résumé

  • «Char» et «varchar» sont des types de données dans les langages de programmation et les systèmes de base de données qui partagent certains traits communs en termes de fonctionnalité et de technicité. Cependant, ils diffèrent considérablement comme la façon dont ils sont stockés et récupérés.
  • Alors que Char se réfère réellement au caractère, Varchar fait référence au caractère variable. Comme son nom l'indique, Char est un type de données de longueur fixe tandis que Varchar est un type de données de 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 les informations de longueur. Pour Char, la longueur varie de 0 à 255 et pour Varchar, elle peut être entre 0 et 65 535.
  • Comme le char est de longueur fixe, tout espace restant sur le terrain est rembourré de blancs. Varchar, en revanche, est de longueur variable, donc il ne contient que les caractères que vous lui attribuez.
  • Les caractères restants sont rembourrés d'espaces blancs lorsque les valeurs sont stockées dans des champs «char», tandis que «varchar» n'ajoute pas d'espaces supplémentaires lorsque vous fournissez les données moins que la longueur spécifiée.