MS SQL Server Concepts and Programming Question:
What Are the Differences between CHAR and VARCHAR in MS SQL Server?

Answer:
CHAR and VARCHAR are both used to store code page based character strings. But they have the following main differences:
* CHAR(n) stores character strings with a fixed length, n bytes, storage format.
* VARCHAR(n) stores character strings with a variable length, less than n bytes, storage format.
* If the input string of CHAR(n) has less than n bytes, it will be padded with space characters to become n bytes.
* If the input string of VARCHAR(n) has less than n bytes, it will not be padded with any characters.
* If the input string of CHAR(n) has more than n bytes, it will be truncated to n bytes.
* If the input string of VARCHAR(n) has more than n bytes, it will also be truncated to n bytes.
* CHAR(n) stores character strings with a fixed length, n bytes, storage format.
* VARCHAR(n) stores character strings with a variable length, less than n bytes, storage format.
* If the input string of CHAR(n) has less than n bytes, it will be padded with space characters to become n bytes.
* If the input string of VARCHAR(n) has less than n bytes, it will not be padded with any characters.
* If the input string of CHAR(n) has more than n bytes, it will be truncated to n bytes.
* If the input string of VARCHAR(n) has more than n bytes, it will also be truncated to n bytes.
Previous Question | Next Question |
What Are the Differences between CHAR and NCHAR in MS SQL Server? | What Are the Differences between DECIMAL and FLOAT in MS SQL Server? |