Zastosowanie typu danych SQL Server NVARCHAR do definiowania kolumn, zmiennych i parametrów o zmiennej długości znaków. Typy NVARCHAR mają zmienną długość. Zajmują one więcej pamięci niż przechowywane znaki. Różni się to od typu CHAR, który zawsze zajmuje całą zdefiniowaną ilość.
Typ NVARCHAR przechowuje do 4000 znaków, przy czym każdy znak zajmuje dwa bajty. NVARCHAR dobrze nadaje się do przechowywania danych o rozszerzonym zestawie znaków, takich jak kanji.
Generalnie rzecz biorąc, jeśli piszesz aplikację obsługującą wiele języków, użyj NVARCHAR zamiast VARCHAR.
Definiowanie typów NVARCHAR
Tutaj używamy NVARCHAR do zdefiniowania tabeli Person z FirstName o długości 20 i LastName o długości 40:
CREATE TABLE Person ( PersonID INT NOT NULL, FirstName NVARCHAR(20), LastName NVARCHAR(40) )
Tutaj deklarujemy zmienną:
DECLARE @firstName NVARCHAR(20);
Definicje te są jak definicje VARCHAR. Główna różnica polega na tym, że kolumny zajmują dwa razy więcej miejsca!
Przykład SQL SERVER NVARCHAR
Sprawdź zapytanie, które definiuje LastName jako NVARCHAR:
Zauważ, że DATALENGTH jest dwa razy dłuższy niż długość znaków. Zauważ również, że kiedy LastName jest konwertowane do VARCHAR, DATALENGTH jest taka sama jak długość znaków.