Articles

Tipo de datos NVARCHAR de SQL Server

Posted on

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:

Ejemplo de NVARCHAR de SQL SERVER en la definición del tipo de columna de la tabla.'s column type definition.

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.

SELECT Apellido ,Len(Apellido) ,DATALENGTH(Apellido) ,DATALENGTH(CAST(Apellido como VARCHAR(20))) FROM Person.Person
SELECT LastName ,Len(LastName) ,DATALENGTH(LastName) ,DATALENGTH(CAST(LastName as VARCHAR(20))) FROM Person.Person

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *