Utilice el tipo de datos NVARCHAR de SQL Server para definir columnas, variables y parámetros de caracteres de longitud variable. Los tipos NVARCHAR son de longitud variable. Ocupan más memoria que los caracteres almacenados. Esto difiere del tipo CHAR, que siempre ocupa toda la cantidad definida.
El tipo NVARCHAR almacena hasta 4000 caracteres y cada carácter ocupa dos bytes. NVARCHAR es muy adecuado para almacenar datos de conjuntos de caracteres extendidos, como los kanji.
En general, si está escribiendo una aplicación que soporta varios idiomas, entonces utilice NVARCHAR sobre VARCHAR.
Definiendo tipos NVARCHAR
Aquí, usamos NVARCHAR para definir una tabla Persona con Nombre de 20 de longitud, y Apellido de 40 de longitud:
CREATE TABLE Person ( PersonID INT NOT NULL, FirstName NVARCHAR(20), LastName NVARCHAR(40) )
Aquí declaramos una variable:
DECLARE @firstName NVARCHAR(20);
Estas definiciones son como las de VARCHAR. ¡La principal diferencia es que las columnas ocupan el doble de espacio!
Ejemplo de NVARCHAR de SQL SERVER
Mira esta consulta que tiene LastName definido como NVARCHAR:
Nota cómo el DATALENGTH es el doble de largo que la longitud de los caracteres. Observe también que, cuando LastName se convierte en VARCHAR, el DATALENGTH es el mismo que la longitud de los caracteres.