utf16还是utf32?我正在尝试用多种语言存储内容。有些语言使用双宽字体(例如,日语字体的宽度通常是英语字体的两倍)。我不确定我应该使用哪种数据库。任何关于这四个字符集之间差异的信息。。。
MySQL的utf32
和utf8mb4
(以及标准UTF-8)可以直接存储Unicode指定的任何字符;前者固定大小为每个字符4个字节,而后者在每个字符1到4个字节之间。
utf8mb3
和原始utf8
只能存储前65536个代码点,这些代码点将覆盖CJVK(中文、日语、越南语、韩语),并且每个字符使用1到3个字节。
utf16
对前65536个代码点使用2个字节,对其他所有代码点使用4个字节。
至于字体,这完全是一个视觉问题。
另请参阅MySQL文档以获得Unicode支持。
CCD_ 6是最好的。
utf8mb4
支持每个字符4个字节,而utf8支持每个字符3个字节,因此它在没有错误的情况下涵盖了更广泛的用途。
例如,使用utf8mb4
,您可以支持表情符号。如果你试图在不受支持的字符集中插入表情符号,你会得到错误。
utf8mb4
是2的更现代的版本,最终将取代旧版本。