UTF8の特定の違いと何のutf8mb4?

  I.はじめに

  MySQLの5.5.3は互換性のある4バイトのユニコードになるように設計最大4バイト、MB4意味、このコードutf8mb4を追加した後。utf8mb4はUTF8です

  変換を行う必要はありません外のコーディング変更utf8mb4に加えてスーパーセット、。もちろん、一般的には、スペースを節約するために、使用UTF8で十分です。

  第二に、コンテンツ記述

  それは言うその漢字のほとんどを保存することがUTF8以来、なぜ使用utf8mb4?3バイトの最大長をコードする元MySQLのサポートUTF8文字、など

  遭遇した4バイト幅の文字が異常に挿入されます。最大のエネルギーをコードする3バイトのUnicode UTF-8の文字は、Unicodeの基本多言語である、0xFFFFであります

  プレーン(BMP)。つまり、任意の文字はUnicodeの基本多言語テキスト面では、あなたは、UTF8キャラクタ・セットは、MySQLに格納されて使用することはできませんではありません。絵文字式(絵文字含みます

  のUTF8は(など、特別なUnicodeエンコーディングである)、IOSとAndroid携帯電話上の共通の欠如、そして多くは、一般的に使用される漢字、ならびに任意の新しいUnicode文字ではありません

  ポイント)。

  コンピュータの文字を格納する場合、典型的には、収納スペースは、タイプ、文字エンコーディングに応じて割り当てられます。例えば、以下のスキームをコードします。

  ①ASCIIコーディング、文字(大文字小文字を区別しないのは)中国の文字が空白の2つのバイトを占有し、空間の1つのバイトを占めています。数値のバイナリシーケンス、記憶部としてのデジタルコンピュータは、一般的に8ビットのバイナリ数は、10進数に変換されます。最小0、最大値255。

  ②UTF-8エンコーディングは、英語の文字は(伝統的なを含む)は、中国では、ストレージスペースの3つのバイトを占め、ストレージスペースの1つのバイトを占めています。

  ③Unicodeコーディング、英語ストレージの2つのバイトを占有し、(を含む伝統的な)中国は、ストレージの2つのバイトを占めています。

  ④UTF-16符号、文字又は文字格納された漢字文字(Unicodeを格納する文字の数が領域は4つのバイトを必要とする拡張)2バイトの記憶領域を必要とします。

  ⑤UTF-32符号化は、世界の任意の文字を格納する記憶領域の4つのバイトを必要とします。

  文字のほとんどと互換性がUTF8ので、なぜutf8mb4を拡大する必要がありますか?

  インターネットの発展に伴い、あるように、このタイプの絵文字記号などの文字の多くの新しい種類、その結果、我々は通常、チャットの小さな黄色の表情でそのような文字を送信

  今では、UTF8文字のためのMySQLは、MySQLに格納され、その後utf8mb4このコードを含むように拡張されたことは不可能UTF8を使用することで、基本的なマルチプレーンUnicode文字ではありません。

  そのため、ユーザーが特別な記号を使用できるようにしたい場合は、データベースの設計は、コーディングは、好ましくは、このデザイン缶がより良い互換性データベースがあるが、そうすることを、店舗utf8mb4に使用されています

  より多くのストレージスペースを消費につながります。

  代理出産威信15023219993合肥太原の代理の威信15023219993上海代理威信15023219993は広州代理15023219993重慶代理15023219993上記は、単純な!詳細UTF8とutf8mb4違いです。

おすすめ

転載: www.cnblogs.com/ipengrui1/p/12283407.html