问题原因:mysql数据库、数据表、字段编码问题,是由于字段存储出现字符表情,而这些表情是按照四个字节一个单位进行编码的,而我们通常使用的utf-8编码在mysql数据库中默认是按照3个字节一个单位进行编码的,正是这个原因导致将数据存入mysql数据库的时候出现错误,解决方法如下!
1.修改mysql数据库的编码为uft8mb4
ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
2.修改数据表的编码为utf8mb4
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
3.修改项目链接数据库的配置文件代码,例如:
[DATABASE] TYPE=mysql HOSTNAME=你的数据库地址(ip地址) DATABASE=数据库名称 USERNAME=你的用户名 PASSWORD=你的密码 HOSTPORT=数据库端口(默认3306) CHARSET=utf8mb4(连接数据库时的编码,这里一定要写成utf8mb4) PREFIX=xxx_(表前缀)
经过以上步骤,最好重启一下mysql,然后问题得到解决