Като набор от знаци, ако можете, определено UTF-8.
Като съпоставяне - това е малко гадно за езици със специални знаци. Има различни видове съпоставяния. Всички те могат да съхраняват всички умлаути и други знаци, но се различават по начина, по който третират умлаутите при сравнения, т.е. дали
u = ü
е вярно или невярно; и при сортиране (където в азбуките умлаутите са разположени в реда на сортиране).
Накратко, най-добрият избор е или
utf8_unicode_ci
Позволява търсене без регистри; Той третира ß
като ss
и използва сортиране по DIN-1. За съжаление, както всички недвоични съпоставяния на Unicode, той третира u = ü
което е ужасна неприятност, защото търсенето на "Muller" също ще върне "Müller". Ще трябва да заобиколите това, като зададете съпоставяне, съобразено с Umlaut, в реално време.
или utf8_bin
Това съпоставяне няма u = ü
проблем, но са възможни само търсения, чувствителни към главни букви.
Не съм напълно сигурен дали има някакви други странични ефекти от използването на двоичното съпоставяне; Зададох въпрос за това тук .
Тази страница с ръководство за mySQL дава добър преглед на различните съпоставяния и последствията, които те носят при ежедневната употреба.
Тук е общ преглед на наличните съпоставяния в mySQL.