Het is beter om de utf8_bin
. te gebruiken collatie omdat, hoewel het niet mogelijk is in UTF-8, het in het algemeen theoretisch mogelijk is (zoals gebeurt met UTF-16) voor hetzelfde tekenreeks die moet worden weergegeven door verschillend coderingen, die een binaire vergelijking niet zou begrijpen, maar een binaire sortering wel. Zoals gedocumenteerd onder Unicode-tekensets
:
Daarom, als vergelijkingen met deze kolommen altijd hoofdlettergevoelig zijn, moet u de sortering van de kolom instellen op utf8_bin
(zodat ze hoofdlettergevoelig blijven, zelfs als u vergeet iets anders op te geven in uw zoekopdracht); of als alleen bepaalde zoekopdrachten hoofdlettergevoelig zijn, kunt u specificeren dat de utf8_bin
sortering moet worden gebruikt met behulp van de COLLATE
zoekwoord:
SELECT * FROM table WHERE id = 'iSZ6fX' COLLATE utf8_bin