Unicode和UTF-8编码

Unicode和UTF-8的关系:

  • Unicode字符集几乎包括世界上所有已知字符。
  • 但是Unicode没有规定如何存储这些字符怎么用二进制存储。
  • 这个时候UTF-8就出现了,UTF-8(8-bit Unicode Transformation Format)。类似还有UTF-16、UTF-32。
  • UTF-8使用1-4个字节为每个字符编码,UTF-16使用2-4个字节,UTF-32固定使用4字节为每个字符编码。
  • UTF-8可以根据不同的符号自动选择编码的长度。UTF-32的缺陷很明显,对于英文字符这类字符消耗的空间是UTF-8的四倍。
  • UTF-8是目前使用的最广的一种字符编码。

注意:

MySQL字符编码集有两套UTF-8实现:

  • utf-8:utf-8只支持1-3个字节,在utf-8编码中,中文是三个字节,其他数字、英文、符号占一个字节。但emoji符号占4个字节,一些较复杂的文字和繁体字也是四个字节。
  • utf-8mb4:UTF-8的完整实现,最多支持使用四个字节表示字符。

猜你喜欢

转载自blog.csdn.net/qq_45800977/article/details/130361441