文字セットの選択
通常は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の精度は高いですが、校正速度は少し遅くなります。