我不建议richies回答,因为你把数据库里的数据搞砸了。你不能修复你的问题,但是试着“隐藏”它,并且不能用废弃的数据执行基本的数据库操作。
如果您遇到此错误,可能是您发送的数据不是utf-8编码的,或者您的连接不是utf-8。首先,验证数据源(文件,…)
真正地
是UTF-8。
然后,检查数据库连接,连接后应执行以下操作:
SET NAMES 'utf8';
SET CHARACTER SET utf8;
接下来,验证存储数据的表是否具有utf8字符集:
SELECT
`tables`.`TABLE_NAME`,
`collations`.`character_set_name`
FROM
`information_schema`.`TABLES` AS `tables`,
`information_schema`.`COLLATION_CHARACTER_SET_APPLICABILITY` AS `collations`
WHERE
`tables`.`table_schema` = DATABASE()
AND `collations`.`collation_name` = `tables`.`table_collation`
;
最后,检查数据库设置:
mysql> show variables like '%colla%';
mysql> show variables like '%charac%';
如果源、传输和目标都是utf-8,那么问题就解决了;)