What is the difference between char, nchar, varchar, and nvarchar in SQL Server?

sql-server, varchar

Solution

Just to clear up... or sum up...

- `nchar` and `nvarchar` can store Unicode characters.

- `char` and `varchar` cannot store Unicode characters.

- `char` and `nchar` are fixed-length which will reserve storage space for number of characters you specify even if you don't use up all that space.

- `varchar` and `nvarchar` are variable-length which will only use up spaces for the characters you store. It will not reserve storage like `char` or `nchar`.

`nchar` and `nvarchar` will take up twice as much storage space, so it may be wise to use them only if you need Unicode support.

Problem

What is meant by `nvarchar`? What is the difference between `char`, `nchar`, `varchar`, and `nvarchar` in SQL Server?

Original source

Related problems