Difference Between Char and Varchar

The invention of the computer was followed by the need for new and different programming and computer languages. Different computer languages came along with several codes and various data types to fit the requirements of the users.


Education Quiz

Test your knowledge about topics related to education

1 / 10

Which branch of mathematics deals with the study of shapes and sizes of objects?

2 / 10

What is the main purpose of a thesis statement in an essay?

3 / 10

Who wrote the novel "Great Expectations"?

4 / 10

What is GPA used for?

5 / 10

First step in measurement is:

6 / 10

In which year was the first college in the United States founded?

7 / 10

Which of the following is a type of visual art?

8 / 10

Which of the following is NOT a type of writing?

9 / 10

What is the study of the physical, social, and cultural phenomena of a particular country or region called?

10 / 10

Who painted the famous artwork “The Starry Night”?

Your score is


The most widely used and taught programming language is SQL. Programmers use this to store different strings of data with various lengths. Two such data types that are commonly used is ‘char’ and ‘varchar’.

Key Takeaways

  1. Char and varchar are both datatypes used in databases to store character strings; char is a fixed-length datatype, while varchar is a variable-length datatype.
  2. Char fields reserve a specific amount of storage space for each field, regardless of the actual length of the data entered; varchar fields only allocate enough storage space to accommodate the data entered.
  3. Char fields are generally faster to search and sort, as they have a fixed length; varchar fields allow for greater flexibility and conserve storage space by only using the necessary amount of space.

Char vs Varchar

The difference between Char and Varchar is that char stores only fixed-length single string data types whereas varchar stores variable characters of different strings and the length depends on the string.

Char vs Varchar

Want to save this article for later? Click the heart in the bottom right corner to save to your own articles box!

Char is the SQL data type that helps in storing characters and is short for ‘characters’. It stores only non-Unicode data i.e., only one type of string per cell. It also has a fixed-length and this can vary from 1-255 characters.

Varchar is another SQL data type that helps in storing variable characters of varying length. It stands for ‘variable character’. It stores alphanumeric data and the size depends on the specific string that is stored.

Comparison Table

Parameters of ComparisonCharVarchar
MeaningIt is a SQL code that helps in storing charactersIt is a SQL code that helps in storing variable character
Abbreviation forcharacterVariable character
Storage sizeThey store values of fixed length and is equal to the maximum of the column They store alphanumeric data of variable data and depends on the specific string that is stored
Memory allocationStatic memory allocationDynamic memory allocation
Bytes used1 byte per character1 byte per character plus 1 or 2 extra bytes for storing varying length information.
Character limit255 characters65535 characters
UsageProgrammers can use this when the length of the characters are concise and known.Programmers can use this when the data entries length is varying
ContentsHas only charactersHas various strings like characters and variables

What is Char?

Char is the data type that stores non-Unicode data values of fixed values. It stands for ‘char’. They are used by programmers only when the length of the data storage is known.

Since they have only one type of string in storage, they have a maximum character limit of 255 characters and the storage size is the same as the storage size for the column. Also, they use 1 byte per character for storage.

They use static memory allocation i.e., the storage of the variable is permanent and that the memory is already allocated before the codes can be entered and executed. They have better performance than varchar.

What is Varchar?

Varchar is the data type that stores variable characters. It stands for ‘variable character’. They are used by the programmers when the data-length is varying and needs more than one data-type.

Since they have different strings, their maximum character limit is 65,535 characters as it depends on the limit of different string’s characters. They use 1 byte per character, similar to char. But they also use 1 or 2 bytes extra for storing length information.

They use dynamic memory allocation. This is used when the length or amount of the data to be stored is unknown or variable. It also allows storing data without having an upper limit. They are used for storing data like address that requires.

Main Differences Between Char and Varchar

  1. Though both are SQL codes, they are very different from each other because ‘char’ helps in storing characters of fixed length whereas ‘varchar’ stores variable characters of variable lengths.
  2. ‘char’ stands for character and ‘varchar’ stands for variable character. Therefore by their abbreviations, we can guess what they are used for.
  3. 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 diff alphanumeric strings like an address.
  4. Char uses static memory allocation whereas varchar uses dynamic memory allocation.
  5. Char uses 1 byte per character for storage of the characters. Similar to char, varchar also uses 1 byte per character for storage. The difference between them is that varchar also uses 1 or 2 bytes extra for storing length information whereas this is not needed for char.
  6. 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. But 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.
  7. The usage of the two codes is also different. Char is used by programmers when the length of the data value is known and varchar is used when the length of data values keeps varying for each cell.
  8. As the name suggests, char stores only specific string characters. But varchar can store various string characters like alphabets, numbers and variables. This is why they are both used for different purposes.
  1. http://www.cs.nott.ac.uk/~psznza/G51DBS/dbs5-6.pdf
  2. https://link.springer.com/chapter/10.1007/978-1-4842-3576-8_1
One request?

I’ve put so much effort writing this blog post to provide value to you. It’ll be very helpful for me, if you consider sharing it on social media or with your friends/family. SHARING IS ♥️

Leave a Comment

Your email address will not be published. Required fields are marked *