Narazil jsem na stejný problém a po nějakém googlování se zdá, že ho MySQL neobsahuje. Chcete-li to "simulovat", jak to říkáte,
1) Chcete-li v DB zajistit rozlišování malých a velkých písmen:nastavte sloupec tabulky na utf8_bin
řazení
To umožňuje:
- přísné SELECTy:
SELECT "Joe"
NEVRÁTÍ řádky s "joe" / "joE" / "jOe" / atd - přísný UNIQUE index:sloupec s UNIQUE indexem bude s rozdíly v malých a velkých písmenech zacházet jako s různými hodnotami. Pokud je například použito řazení utf8_unicode_ci, vložení "Joe" do tabulky, která již "joe" má, vyvolá chybu "Duplicate key". Pokud je použit ut8_bin, vložení "Joe" bude fungovat dobře.
2) Chcete-li získat správné řazení ve výsledcích:přidejte řazení do dotazu SQL:
SELECT ... ORDER BY column COLLATE utf8_unicode_ci