Det är bättre att använda utf8_bin sammanställning eftersom, även om det inte är möjligt i UTF-8, i det allmänna fallet är det teoretiskt möjligt (såsom händer med UTF-16) för samma sträng som ska representeras av olika kodningar, som en binär jämförelse inte skulle förstå men en binär sammanställning skulle. Som dokumenterats under Unicode-teckenuppsättningar
:
Därför, om jämförelser som involverar dessa kolumner kommer alltid vara skiftlägeskänslig bör du ställa in kolumnens sortering till utf8_bin (så att de förblir skiftlägeskänsliga även om du glömmer att ange något annat i din fråga); eller om bara vissa frågor är skiftlägeskänsliga kan du ange att utf8_bin sortering ska användas med COLLATE nyckelord:
SELECT * FROM table WHERE id = 'iSZ6fX' COLLATE utf8_bin