Mysql插入数据报错, InternalError: (1366, u"Incorrect string value: '\\xF0\\x9F\\x90\\

版权声明:转载请注明出处 https://blog.csdn.net/cotyyang/article/details/82056321
爬天猫评论的时候,碰到的这个错误,网上搜了搜,总结一下

UTF-8编码有可能是两个、三个、四个字节,但是评论里Emoji表情是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。
MySQL数据库的 “utf8”并不是真正概念里的 UTF-8。
MySQL中的“utf8”编码只支持最大3字节每字符。真正的大家正在使用的UTF-8编码是应该能支持4字节每个字符。
MySQL的开发者没有修复这个bug。他们在2010年增加了一个变通的方法:一个新的字符集“utf8mb4
所以,MySQL中的 “utf8mb4” 才是真正意义上的“UTF-8”。
因此,解决方法就是下图这样
这里写图片描述

猜你喜欢

转载自blog.csdn.net/cotyyang/article/details/82056321