Difference Between CHAR And VARCHAR String Data Types

What Is CHAR?

What is VARCHAR?

Difference Between CHAR And VARCHAR In Tabular Form

CHAR STRING DATA TYPE VARCHAR STRING DATA TYPE
Char are fixed length strings with a set length specified.   Varchar are variable length strings with a maximum length specified.  
CHAR datatype is used to store character string of fixed length.   VARCHAR datatype is used to store character string of variable length.  
In CHAR, if the length of string is less than set or fixed length then it is padded with extra memory space.    In VARCHAR, if the length of string is less than set or fixed length then it will store, as it is without padded with extra memory spaces.  
CHAR datatypes can be used when we expect the data values in a column to be of same length.   VARCHAR datatype can be used when we expect the data values in a column to be of variable length.  
The storage size for CHAR is equal to the storage size of the column and stores values of only fixed length like phone numbers.   The storage size of VARCHAR depends on the string that is stored as it stores different alphanumeric strings like an address.  
CHAR uses static memory allocation.   VARCHAR uses dynamic memory allocation.  
Since CHAR is used only for fixed values, it has a maximum character limit of only 255 characters. They use only one string type data.   VARCHAR has a character limit of 65535 characters as it can store different strings of data and the limit depends on the limit of each string.  
CHAR stores only specific string characters.   VARCHAR can store various string characters like alphabets, numbers and variables.  
CHAR takes 1 byte per character for storage.   VARCHAR takes 1 byte per character plus 1 or 2 extra bytes for storing length information.  
CHAR should be used when the length of the variable is known.   VARCHAR should be used only when the length of the variable is not known.  
CHAR does not shrink the space if not fully filled.   VARCHAR shrinks the space if not fully filled.  

What You Need To Know About CHAR And VARCHAR

CHAR

  • Char are fixed length strings with a set length specified.
  • CHAR datatype is used to store character string of fixed length.
  • In CHAR, if the length of string is less than set or fixed length then it is padded with extra memory space.  
  • CHAR datatypes can be used when we expect the data values in a column to be of same length.
  • The storage size for CHAR is equal to the storage size of the column and stores values of only fixed length like phone numbers.
  •  CHAR uses static memory allocation.
  •  Since CHAR is used only for fixed values, it has a maximum character limit of only 255 characters. They use only one string type data.
  • CHAR stores only specific string characters.
  • CHAR takes 1 byte per character for storage.
  • CHAR should be used when the length of the variable is known.
  • CHAR does not shrink the space if not fully filled.

VARCHAR

  • Varchar are variable length strings with a maximum length specified.
  • VARCHAR datatype is used to store character string of variable length.
  • In VARCHAR, if the length of string is less than set or fixed length then it will store, as it is without padded with extra memory spaces.
  • VARCHAR datatype can be used when we expect the data values in a column to be of variable length.
  • The storage size of VARCHAR depends on the string that is stored as it stores different alphanumeric strings like an address.
  • VARCHAR uses dynamic memory allocation.
  • VARCHAR has a character limit of 65535 characters as it can store different strings of data and the limit depends on the limit of each string.
  • VARCHAR can store various string characters like alphabets, numbers and variables.
  • VARCHAR takes 1 byte per character plus 1 or 2 extra bytes for storing length information.
  • VARCHAR should be used only when the length of the variable is not known.
  • VARCHAR shrinks the space if not fully filled.