MySQL 8: не удалось вставить двоичную строкуMySql

Форум по Mysql
Ответить
Anonymous
 MySQL 8: не удалось вставить двоичную строку

Сообщение Anonymous »

Код: Выделить всё

CREATE TABLE `tmp` (
`wid` bigint unsigned NOT NULL,
`simhash` binary(255) NOT NULL,
PRIMARY KEY (`wid`),
UNIQUE KEY `u_simhash` (`simhash`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

TRUNCATE `tmp`;
insert into tmp set wid=4, simhash=b'10';
SELECT wid,bin(simhash+0) FROM tmp;
Как и выше, я хочу вставить двоичную строку «10» (равную десятичному 2) в двоичное поле.
Но это не удается. результат bin(simhash+0) равен 0, а не 10, как я ожидал.
Так в чем же проблема? Я просто хочу вставить двоичную строку (например, «1000110101101....») в двоичное поле.
  • Окружающая среда: MySQL 8.0.40
  • Клиент: MySQL Workbench 8.0.40
PS: Используйте SELECT bin(simhash+0), чтобы получить двоичную строку поле. Например. отображать «10» для десятичного числа 2.
Изображение


Подробнее здесь: https://stackoverflow.com/questions/793 ... ing-failed
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»