mysql数据库插入emoji 表情报错Incorrect string value: ‘\xF0\x9F…’ for column ‘XXX’ at row 1

报错原因

在MySQL数据库中插入emoji表情时遇到错误“Incorrect string value: ‘\xF0\x9F…’ for column ‘XXX’ at row 1”,通常是因为数据库的字符集和排序规则(collation)不支持存储4字节的UTF-8编码字符(emoji表情通常使用这种编码)。MySQL的默认字符集utf8只支持3字节的字符,而不支持4字节的字符。为了解决这个问题,你需要将数据库、表或列的字符集改为utf8mb4,它支持4字节的UTF-8编码。

解决方案

手动修改
修改数据库字符集‌(如果尚未设置):

ALTER DATABASE your_database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

‌修改表的字符集‌:

ALTER