mysqlの新しいデータベースの文字セットと照合の選択

文字セットの選択

通常はutf8を選択します。utf8とutfmb4の違いは次のとおりです。

utf8mb4はutf8と互換性があり、utf8よりも多くの文字を表すことができます。いつ使用するかはプロジェクトによって異なります。http://blog.csdn.net/leelyliu/article/details/52879685にアクセスしてください。

1から126までのUnicodeエンコーディング領域は従来のutf8領域に属します。もちろん、utf8mb4もこの領域と互換性があります。utf8mb4拡張領域は126行を超えています。これらの文字を格納する必要がある場合は、utf8mb4を使用する必要があります。スペースを無駄にします。

並べ替えルール

並べ替えは通常、
utf_binとutf_general_ciの2つのタイプに分けられます。

binはバイナリであり、aとAは異なる方法で処理されます

たとえば、次のコマンドを実行します。

 SELECT * FROM table WHERE txt = 'a'

次に、utf8_binでtxt = 'A'の行を見つけることができませんが、utf8_general_ciは見つけることができます。

utf8_general_ciでは大文字と小文字は区別されません。ユーザー名と電子メールを登録するときにこれを使用する必要があります。

utf8_general_csでは大文字と小文字が区別されます。これをユーザー名と電子メールに使用すると、悪影響が生じます。

utf8_bin:各文字列はコンパイルされ、バイナリデータとともに保存されます。大文字と小文字が区別され、バイナリコンテンツを保存できます

中国語と英語の間でutf8_unicode_ciとutf8_general_ciの間に実質的な違いはありません。

utf8_general_ciの校正速度は速いですが、精度は少し悪くなります。
(精度は十分です。通常、データベース構築にはこれを選択してください)

utf8_unicode_ciの精度は高いですが、校正速度は少し遅くなります。

おすすめ

転載: blog.csdn.net/qq_36551991/article/details/111145179