以下をサポートするためにUTF8照合順序が必要です。
UTF8_GENERAL_CI
これらすべての言語をサポートしますか?
はい、その通りです。 UTF-8は、Unicode文字セットのエンコーディングであり、世界中のほぼすべての言語をサポートしています。
唯一の違いは結果の並べ替えにあると思います。他の言語(アクセント、ウムラウトなど)では文字が異なる場合があります。また、a
とä
を比較すると、別の照合順序では動作が異なる場合があります。
_ci
サフィックスは、ソートと比較で大文字と小文字が区別されないことを意味します。
http://www.collation-charts.org/ 興味があるかもしれません。
UTF8_GENERAL_CI
は少し前に良い決断だったので。現在、いくつかの欠点があります。
MySQLのUTF8は、実際には4バイトではなく3バイトを使用します。これは、絵文字や新しいアジア文字などの記号に必要です。
そのため、MySQLにはutf8mb4という新しい文字セットがあり、実際にはUTF8定義に準拠しています。
アジアの言語を完全にサポートするには、utf8mb4を選択する必要があります。
複数の言語での正しい並べ替えが必要な場合は、一般的な代わりにutf8mb4_unicode
またはutf8mb4_unicode_ci
を使用してください。
あなたが見つけることができるより詳細な答え tf8_general_ciとutf8_unicode_ciの違いは何ですか