MySQL の Unicode 文字の処理: Ä、Ö、および Ü
両方の "Harligt" を検索すると、同一のクエリ結果が表示されるのは不可解です。 MySQL の「Härligt」。この動作は、特定の Unicode 文字を同一視する MySQL のデフォルトの照合設定に起因します。
MySQL の非言語固有の Unicode 照合順序 (utf8_general_ci や utf8_unicode_ci など) は、特定の文字を同等のものとして扱います。つまり、
その結果、2 つのクエリは 3 つの文字すべてを同一であると認識し、一致する結果が得られます。 .
この問題を解決するには、次の 2 つのオプションがあります:
<code class="sql">select * from topics where name='Harligt' COLLATE utf8_bin;</code>
このアプローチでは、自動文字変換を行わずに大文字と小文字を区別した検索が可能になります。
大文字と小文字を区別しない検索が必要だが文字変換を行わない場合、MySQL は現在、適切な照合順序が提供されていません。ただし、コミュニティ内では継続的な議論と潜在的な解決策が存在します。
以上がMySQL で「Harligt」と「Härligt」が同じ結果を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。