mysql5.7上为什么不能用utf8mb3
时间: 2024-04-18 22:28:39 浏览: 14
抱歉,我之前给出的回答有误。实际上,在MySQL 5.7版本中,依然可以使用utf8mb3字符集编码。我混淆了MySQL 8.0版本中的更改。
在MySQL 5.7及之前的版本中,utf8mb3字符集被称为utf8。这是因为早期版本的MySQL中,utf8字符集只支持最多3个字节的Unicode字符编码,与现在的utf8mb3相同。因此,在MySQL 5.7中,utf8指的就是utf8mb3字符集编码。
然而,在MySQL 8.0版本中,为了更准确地表示支持4个字节的Unicode字符编码,utf8mb3被重命名为utf8,并引入了新的utf8mb4字符集编码。
所以,在MySQL 5.7上,你仍然可以使用utf8(即utf8mb3)作为字符集编码。如果你需要支持更广泛的字符集和表情符号,你可以考虑升级到MySQL 8.0并使用utf8mb4字符集编码。
相关问题
utf8mb3在mysql5.7上能用吗?
在MySQL 5.7及更高版本中,默认的字符集编码是utf8mb4,而不是utf8mb3。utf8mb4是支持更广泛的字符集和表情符号的扩展字符集编码。因此,在MySQL 5.7上,你不能直接使用utf8mb3字符集编码。如果你的应用程序需要使用utf8mb3字符集编码,你可能需要考虑升级到MySQL 8.0或更高版本,或者将应用程序中的字符集设置为utf8mb4并使用适当的转换方法来处理特殊字符。
为什么mysql 设置utf8后显示utf8mb3
在 MySQL 中,utf8 是指一个最多使用 3 个字节编码的 Unicode 字符集,它可以支持大多数的字符。但是 MySQL 的 utf8 仅支持 Unicode 的 BMP 平面(也就是基本多文种平面),而不支持较高的 Unicode 超出 BMP 的字符。为了支持这些字符,MySQL 5.5.3 引入了 utf8mb4 字符集,它支持四个字节编码的 Unicode 字符集,可以支持更多的字符。
在 MySQL 5.5.3 之前,MySQL 的 utf8 字符集使用的是最多使用 3 个字节编码的 Unicode 字符集,因此如果要支持四个字节编码的 Unicode 字符集,需要使用 utf8mb4 字符集。但是在 MySQL 5.5.3 之后,为了向下兼容,MySQL 的 utf8 字符集默认仍然使用最多使用 3 个字节编码的 Unicode 字符集,但是可以通过指定字符集为 utf8mb4 来支持四个字节编码的 Unicode 字符集。因此,当使用 utf8 字符集时,实际上使用的是 utf8mb3 字符集,而不是 utf8mb4 字符集。