Каков наилучший способ хранения длинной шестнадцатеричной строки с более чем 1500 символами?Хранение длинного шестнадцатеричного значения
Что такое лучший тип?
- Byte
- Текст
- LONGTEXT
- VarChar
Каков наилучший способ хранения длинной шестнадцатеричной строки с более чем 1500 символами?Хранение длинного шестнадцатеричного значения
Что такое лучший тип?
BINARY
закрепили обивка и максимальная длина 255 байт, так что не хорошо для вас.VARCHAR
и TEXT
имеют как максимальную длину 65535 байт (64kb) и используют -более дополнительные байты для хранения длины данных.LONGTEXT
имеет максимальную длину 4294967295 байт (4 Гб) и использует -более дополнительные байты для хранения длины данных.Если вы знаете, что вы всегда будете иметь меньше 64 кбайт данных в вашей HEX строки, я бы выбрал TEXT
, в противном случае пойти с LONGTEXT
.
'BYTE' ->' BINARY'. –
@RickJames: да, вы правы! Я исправил свой ответ, спасибо. Существует тип 'CHAR_BYTE', и я смутил его тем типом, который OP указал в вопросе. :) – Urban
(я тоже был в замешательстве.) 'CHAR (123) BYTE' (без подчеркивания) совпадает с« BINARY (123) »и существует для обеспечения совместимости. –
Если вы упакуете его в байты (из шестнадцатеричного), то VARBINARY(...)
или BLOB
.
Если вы храните его как шестнадцатеричный, VARCHAR(...) CHARACTER SET ascii
или TEXT CHARACTER SET ascii
. Я упоминаю ascii, особенно если ваше значение по умолчанию - utf8; нет необходимости в utf8 для шестнадцатеричных цифр.
Можете ли вы угадать максимальный предел? – 1000111
Почему вы не проверяете документацию MySQL вместо запроса вопроса SOF? Почему бы не использовать Google? Y? – Trix