Подтвердить что ты не робот

Вставить шестнадцатеричные значения в MySql

У меня есть таблица с столбцом VARBINARY. Мне нужно вставить строку, такую ​​как "4D2AFF", которая представляет шестнадцатеричные значения 0x4D, 0x2A и 0xFF соответственно. Как я могу построить это утверждение?

4b9b3361

Ответ 1

Вы можете использовать UNHEX() функцию для преобразования шестнадцатеричной строки с шестнадцатеричными парами в двоичную и HEX(), чтобы сделать наоборот.

т.е.

INSERT INTO tbl (col) VALUES (UNHEX('4D2AFF'))

и

SELECT HEX(col) FROM tbl

Ответ 2

Или вы можете это сделать:

INSERT INTO tbl (col) VALUES (X'4D2AFF')

Подробнее см. .

Ответ 3

Функции Hex() и Unhex() уже упоминались, но я хотел бы также взвешивать альтернативный шаблон.

Как вы используете строки до и после? Если вы можете избежать коверсии до последней возможной минуты, это очень важно. Таким образом, вы не рискуете, что что-то пойдет не так, или забудете, был ли объект, который вы извлекли из БД, уже преобразован или нет.