Строковый тип данных

Строковый тип данных является наиболее используемым типом данных. Благодаря ему в базе данных хранятся как текстовые, так и различные двоичные данные (например, картинки).

В MySQL он представлен следующими типами:

CHAR и VARCHAR

ТипОписаниеДиапазон символов
CHAR(X)Содержит текстовые строки. Длина фиксируемая, её вы указываете при объявлении. В случае, если длина строки меньше указанной, она дополняется правыми пробелами до указанной длины.Длина может быть любой в диапазоне от 0 до 255
VARCHAR(X)Содержит текстовые строки. Длина строк динамическая.Длина может быть любой в диапазоне от 0 до 65,535

BINARY и VARBINARY

Типы данных BINARY и VARBINARY аналогичны VARCHAR и CHAR только они хранят двоичные строки.

ТипОписаниеДиапазон символов
BINARY(X)Содержит двоичные строки. Длина фиксируемая, её вы указываете при объявлении.Длина может быть любой в диапазоне от 0 до 255
VARBINARY(X)Содержит двоичные строки. Длина строк динамическая.Длина может быть любой в диапазоне от 0 до 65,535

BLOB и TEXT

BLOB используется для хранения больших бинарных данных, таких как картинки. TEXT предназначен также для хранения больших данных, но текстового содержания.

Разница между ними заключается в том, что сортировки и сравнения сохранённых данных у BLOB чувствительны к регистру и не чувствительны к регистру в полях TEXT.

ТипОписаниеДиапазон символов
BLOBСодержит двоичные строки.Максимальная длина 65,535
TEXTСодержит текстовые строки.Максимальная длина 65,535

BLOB и TEXT имеют дополнительные подтипы, которые отличаются максимальным размером данных, которые можно в них хранить.

ТипДиапазон символов
TINYBLOBМаксимальная длина 255
MEDIUMBLOBМаксимальная длина 16,777,215
LONGBLOBМаксимальная длина 4,294,967,295
TINYTEXTМаксимальная длина 255
MEDIUMTEXTМаксимальная длина 16,777,215
LONGTEXTМаксимальная длина 4,294,967,295