Разница между BINARY и VARBINARY типами данных в MySQL заключается в том, как они хранят двоичные данные: 14
- BINARY используется для хранения двоичных данных фиксированной длины. 14 Значение должно иметь точную длину, и, если вводимое значение короче, оно заполняется нулями до указанной длины. 1 Например, BINARY(5) для хранения 101010 будет хранить его как 10101000 (добавляются нули до достижения длины 5 байтов). 1
- VARBINARY используется для хранения двоичных данных переменной длины. 1 В отличие от BINARY, этот тип данных хранит только фактическое количество байтов, и длина может варьироваться. 1 Например, VARBINARY(5) для хранения 101010 будет хранить ровно 101010, без добавления нулей. 1
Таким образом, BINARY подходит для хранения, например, зашифрованных паролей, идентификаторов или хешей, а VARBINARY — для хранения изображений, файлов, документов, мультимедиа или любых других двоичных данных, длина которых может меняться. 1