文字セットとして、可能であれば、間違いなくUTF-8です。
照合として-特殊文字を使用する言語では少し厄介です。照合にはさまざまな種類があります。それらはすべてすべてのウムラウトと他のキャラクターを保存できますが、比較におけるウムラウトの扱い方、つまり
u = ü
真または偽です。と並べ替え(アルファベットの中でUmlautsは並べ替え順序で配置されています)。
長い話を短くするために、あなたの最善の策はどちらかです
utf8_unicode_ci
大文字と小文字を区別しない検索が可能です。 ß
を扱います ss
として DIN-1ソートを使用します。悲しいことに、すべての非バイナリUnicode照合と同様に、u = ü
を扱います。 「Muller」を検索すると「Müller」も返されるため、これはひどい迷惑です。ウムラウト対応の照合をリアルタイムで設定することにより、これを回避する必要があります。
またはutf8_bin
この照合にはu = ü
がありません 問題がありますが、大文字と小文字を区別する検索のみが可能です。
バイナリ照合を使用することに他の副作用があるかどうかは完全にはわかりません。 こちら 。
このmySQLマニュアルページ さまざまな照合と、それらが日常の使用にもたらす結果についての概要を説明します。
こちら mySQLで利用可能な照合の一般的な概要です。