Сколько символов в varchar (макс.) - PullRequest
41 голосов
/ 19 ноября 2009

Сколько символов может содержать поле базы данных SQL Server 2008, если тип данных VARCHAR (MAX)?

Ответы [ 3 ]

51 голосов
/ 19 ноября 2009

С http://msdn.microsoft.com/en-us/library/ms176089.aspx

varchar [(n | max)] Переменная длина, не символ Unicode данные. n может быть значением от 1 до 8000. Макс указывает, что максимум Размер хранилища составляет 2 ^ 31-1 байт. Размер хранилища - это фактическая длина введенные данные + 2 байта. Данные ввод может быть 0 символов в длину. Синонимы ISO для varchar являются символами изменяющийся или изменяющийся характер.

1 символ = 1 байт. И не забудьте 2 байта для окончания. Итак, 2 ^ 31-3 символа.

16 голосов
/ 04 декабря 2017

Для будущих читателей, которым нужен быстрый ответ:

2 ^ 31-1 = 2,147,483,647 символов

7 голосов
/ 19 ноября 2009

См. Справочную таблицу MSDN для получения максимальных чисел / размеров .

байт на VARCHAR (макс.), varbinary (max), xml, текст или изображение колонка: 2 ^ 31-1

Существует два байта для столбца, поэтому фактические данные имеют длину 2 ^ 31-3 макс. Предполагая, что вы используете однобайтовую кодировку символов, это всего 2 ^ 31-3 символов. (Если вы используете кодировку символов, которая использует более одного байта на символ, разделите на общее количество байтов на символ. Если вы используете кодировку символов переменной длины, все ставки отключены.)

...