Поделиться через


Типы данных ntext, text и image (Transact-SQL)

Применимо к:SQL ServerБаза данных Azure SQLУправляемый экземпляр Azure SQLБаза данных SQL в предварительной версии Microsoft Fabric

Эти типы данных фиксированной и переменной длины предназначены для хранения символьных и двоичных данных в формате Юникод и иных форматах. Данные Юникода используют набор символов Юникода UCS-2.

Important

Типы данных ntext, text и image будут удалены в будущей версии SQL Server. Следует избегать использования этих типов данных при новой разработке и запланировать изменение приложений, использующих их в настоящий момент. Вместо этого используйте nvarchar(max), varchar(max)и varbinary(max).

Arguments

ntext

Данные Юникода переменной длины с максимальной длиной строки 2^30 – 1 (1 073 741 823). Размер памяти в байтах вдвое превышает длину введенной строки. Синонимом ntext по стандарту ISO является national text.

text

Данные переменной длины, отличные от Юникода, на кодовой странице сервера и с максимальной длиной строки 2^31 – 1 (2 147 483 647). Если в кодовой странице сервера используются двухбайтовые символы, объем занимаемого типом пространства все равно не превышает 2 147 483 647 байт. В зависимости от строки символа размер хранилища может быть меньше 2 147 483 647 байт.

image

Этот тип представляет двоичные данные переменной длины, включающие от 0 до 2^31 – 1 (2 147 483 647) байт.

Remarks

Для работы с данными ntext, text или image можно использовать перечисленные ниже функции и инструкции.

Functions Statements
DATALENGTH READTEXT
PATINDEX SET TEXTSIZE
SUBSTRING UPDATETEXT
Функции текста и изображения — TEXTPTR WRITETEXT
Функции текста и изображения — TEXTVALID

При удалении столбцов с использованием нерекомендуемого типа данных ntext очистка удаленных данных происходит как сериализованная операция во всех строках. Очистка может занимать много времени. При удалении столбца ntext в таблице с большим количеством строк сначала обновите ntext столбец значением NULL , а затем удалите столбец. Это действие можно выполнять в параллельном режиме, чтобы значительно ускорить его.