MySQL quer converter strings ao fazer
INSERT e SELECT . A conversão é entre o que você declara o cliente ter e o que a coluna é declarado como armazenado. A única maneira de evitar isso é com
VARBINARY e BLOB em vez de VARCHAR e TEXT . O uso de
COLLATION utf8mb4_bin não evita a conversão de/para CHARACTER SET utf8mb4; apenas diz que WHERE e ORDER BY deve comparar os bits em vez de lidar com acentos e dobras de caixa. Tenha em mente que
CHARACTER SET utf8mb4 é uma maneira de codificar texto; COLLATION utf8mb4_* é regras para comparar textos nessa codificação. _bin é simplório. UNIQUE envolve comparar por igualdade, portanto COLLATION . Na maioria dos agrupamentos utf8mb4, os 3 (sem espaços) serão comparados iguais. utf8mb4_bin tratará os 3 como diferentes. utf8mb4_hungarian_ci trata um=Um>one. Os espaços à direita são controlados pelo tipo de dados da coluna (
VARCHAR ou outro). A versão mais recente ainda tem uma configuração relacionada à consideração de espaços à direita.