Вопрос

Microsoft объявила, что: «ntext, text, а также image Типы данных будут удалены в будущей версии Microsoft SQL Server. "И советует использовать nvarchar(max), varchar(max), а также varbinary(max) вместо.

Мой вопрос: у меня есть тип данных больше, чем 8 КБ. Как я могу вставить эти данные в SQL? Какой тип данных решит мою проблему?

MSDN Документ о типах данных

Это было полезно?

Решение

Любой из nvarchar (макс), Varchar (Макс), а также Варбинарный (Макс).

Nvarchar (Max) и varchar (max) предназначены для текстовой информации (с Nvarchar, имеющим поддержку Unicode).

varbinary (max) предназначен для двоичных данных (изображений, файлов и т. Д.).

Во всех случаях документировано, что использование MAX indicates that the maximum storage size is 2^31-1 bytes.

Другие советы

Если это текстовые данные, то либо varchar(max) или nvarchar(max) (Поддерживает Unicode). Varchar (Max) имеет максимальный размер хранения 2 ^ 31-1 байта (Реф.)

Если это двоичные данные, то используйте varbinary(max).

Не путайте бит «Варечар».

Это в основном означает, что вы можете использовать большинство функций на varchar(max) Как вы бы на Varchar (50)orvarchar (1000)orvarchar (8000) `.

  • (MAX) DataTypes поддерживает 2 ^ 32-1 байты
  • Типы не MAX поддерживают до 8000 байтов

Так что вы можете иметь varchar(50) или varchar(1000) вплоть до varchar(8000) Но для хранения более длинных струн вы будете использовать varchar(max).

BIT «MAX» или «50» / «1000» / «8000» / «1000» / «8000» просто определяет внутреннее хранилище + максимальную длину строки.

Там несколько незначительных различий, таких как индексация, конечно.

Вы бы использовали либо nvarchar(max), varchar(max) или varbinary(max)

Если вы вставите данные, превышающие ограничения строки 8 КБ, данные перемещаются вне строки на другую страницу в блоке распределения row_overflow_data.

Последующий MSDN Статья объясняет этот процесс более подробно.

Я верю, что максимум для Varchar (Max) составляет 2 ГБ.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top