SQL SERVER – Datatype Storing Unicode Character Strings

Recently I posted a SQL in Sixty Seconds video where I explained how Unicode datatype works, you can read that blog here SQL SERVER – Storing a Non-English String in Table – Unicode Strings. After the blog went live, I had received many questions about the datatypes which can store Unicode character strings.

Honestly, it is very easy to figure out which data types can store Unicode character strings. If you go to Microsoft’s official documentation about Data types (Transact-SQL), you will immediately find the answer to this problem. There are three different kinds of data type which can store the Unicode value.

nchar(n) – Fixed-size string data where n defines the string size in byte-pairs between 1 and 4,000.

nvarchar(n) – Variable-size string data. n defines the string size in byte-pairs between 1 and 4,000.

ntext – Variable-length Unicode data with a maximum string length of 1,073,741,823 bytes. However, we must remember that this data type will be removed from the future version of the SQL Server and it is not recommended to use this datatype. If you are still using this data type, you are recommended to use either nchar or nvarchar based on the business needs.

Datatype ISO Synonyms
nchar national char varying
nvarchar national character varying
ntext national text

The ISO synonyms for nvarchar are national char varying and national character varying. The ISO synonym for ntext is national text. Here is the YouTube Video which started the conversation.

Let me know if you have any questions about the datatypes.

Reference: Pinal Dave (https://blog.sqlauthority.com

Exit mobile version