SQL Server NVARCHAR データ型を使用して、列、変数、およびパラメータの可変長文字を定義します。 NVARCHAR データ型は長さが可変です。 格納されている文字よりも多くのメモリを占有します。 これは、常に定義された量のすべてを占有するCHAR型とは異なります。
NVARCHAR型は、各文字が2バイトで構成され、最大4000文字まで保存できます。 NVARCHAR型は、漢字などの拡張文字セットのデータを格納するのに適しています。
一般的に言えば、複数の言語をサポートするアプリケーションを書いている場合は、VARCHARよりもNVARCHARを使用します。
NVARCHAR型の定義
ここでは、NVARCHARを使用して、FirstNameの長さが20、LastNameの長さが40のPersonテーブルを定義しています。
CREATE TABLE Person ( PersonID INT NOT NULL, FirstName NVARCHAR(20), LastName NVARCHAR(40) )
ここでは、変数を宣言します。
DECLARE @firstName NVARCHAR(20);
これらの定義はVARCHARの定義のようなものです。 主な違いは、列が2倍のスペースを取ることです!
SQL SERVER NVARCHAR の例
LastName が NVARCHAR として定義されているこのクエリを見てみましょう:
DATALENGTHが文字の長さの2倍になっていることに注目してください。 また、LastNameがVARCHARに変換されると、DATALENGTHが文字長と同じになることにも注目してください。