Version
Минимальная версия: 5.0.15.
Типы для хранения текстовых строк
Их есть много: CHAR
, CHAR BINARY
, VARCHAR
, VARCHAR BINARY
, BINARY
,
VARBINARY
, плюс кучка разных TEXT
и BLOB
полей.
CHAR
и CHAR BINARY
мутят с конечными пробелами, которые лучше обрезать при
необходимости контролируемо, ручками, на perl.
BINARY
дописывает 0-байт до размера, поэтому врядли где-то будет полезен.
Размер VARCHAR
был увеличен с 255 до 65535, поэтому необходимость в
TEXT
/BLOB
-полях резко уменьшилась.
Таким образом, для активного использования остаются 3 поля. Они отличаются:
-
Использованием charset - т.е. наличием перекодировки в процессе ввода/вывода в зависимости от charset таблицы/колонки/юзера.
-
Учитыванием регистра при сравнении, сортировке и проверок на уникальность поля.
-
Игнорированием конечных пробелов при сравнении, сортировке и проверках на уникальность поля.
Макс. | Есть | Учит. | Игнор. | |
---|---|---|---|---|
Размер | charset | регистр | кон.проб. | |
VARCHAR | 65535 | + | - | + |
VARCHAR BINARY | 65535 | + | + | + |
VARBINARY | 65535 | - | + | - |