mysql中的utf8并不是真真正正的utf8,是因为默认情况下他表示的是utf8mb3。

假如你读过mysql的官方文档的话,其实你可以发觉,官方网站中有段显眼的提示说utf8mb3将会在接下来的版本中删掉,而且推荐用户优先选择使用ut8mb4,而不是utf8。

在mysql中,utf8是utf8mb3的简称,这样的字符集只适用码位在0到65535之间的BMP字符。而许多生僻字、emoj表情等等这些补充字符并不在支持范围之内,储存这种字符会出错。

为什么在mysql中使用utf8需谨慎?

因为utfmb3存有像这样的缺陷,所以MySQL在5.5.3之后出现了ut8mb4的编码,这是个能够支持补充字符的字符集。

因此,推荐创建MySQL表的时候,为了能充分考虑兼容性,使用ut8mb4,而不是utf8,更不是utf8mb3。

本文由《MySql教程网》原创,转载请注明出处!https://mysql360.com