nchar и nvarchar (Transact-SQL)

Символьные типы данных, имеющие постоянную длину, nchar, или переменную длину, nvarchar, содержащие данные в Юникоде и использующие кодировку UCS-2.

  • nchar [ ( n ) ]
    Строковые данные постоянной длины в Юникоде. Параметр n определяет длину строки и должен иметь значение от 1 до 4000. Размер при хранении составляет удвоенное значение n в байтах. Если кодовая страница параметров сортировки использует двухбайтовые символы, размер хранения остается равным n байт. В зависимости от символьной строки для хранения n символов может понадобиться менее n байт. По стандарту ISO синонимами для nchar являются national char и national character..

  • nvarchar [ ( n | max ) ]
    Строковые данные переменной длины в Юникоде. Параметр n определяет длину строки и должен иметь значение от 1 до 4000. Значение max указывает, что максимальный размер при хранении составляет 2^31-1 байт (2 ГБ). Размер хранилища в байтах вдвое больше числа введенных символов + 2 байта. По стандарту ISO синонимами для типа nvarchar являются типы national char varying и national character varying.

Замечания

Если значение n при определении данных или в инструкции объявления переменной не указано, то длина по умолчанию равна 1. Если n не указан в функции CAST, длина по умолчанию составляет 30.

Рекомендуется использовать nchar, если размеры элементов данных в столбцах предполагаются сходные.

Рекомендуется использовать nvarchar, если размеры элементов данных в столбцах предполагаются различные.

Тип sysname — это предоставляемый системой определяемый пользователем тип данных, который функционально эквивалентен типу nvarchar(128), за исключением того, что он не допускает значения NULL. Тип sysname используется для ссылок на имена объектов баз данных.

Объектам, в которых используются типы данных nchar или nvarchar, по умолчанию назначаются параметры сортировки базы данных, если только иные параметры сортировки не назначены с использованием предложения COLLATE.

Для типов данных nchar и nvarchar параметр SET ANSI_PADDING всегда принимает значение ON. Значение OFF параметра ANSI_PADDING не применяется к типам данных nchar и nvarchar.

Преобразование в символьные данные

Сведения о преобразовании символьных данных см. в разделе Типы char и varchar (Transact-SQL).

См. также

Справочник

ALTER TABLE (Transact-SQL)

Функции CAST и CONVERT (Transact-SQL)

COLLATE (Transact-SQL)

Инструкция CREATE TABLE (Transact-SQL)

Типы данных (Transact-SQL)

DECLARE @local\_variable (Transact-SQL)

LIKE (Transact-SQL)

SET ANSI_PADDING (Transact-SQL)

SET @local\_variable (Transact-SQL)

Основные понятия

Поддержка параметров сортировки и Юникода