答案 0 :(得分:1)
似乎您导入到MySQL数据库中的数据具有与在MySQL中建立表时所设置的字符集不同的字符集(排序规则)。
我的猜测是那些“奇怪的人物”是一个表情符号。例如,在utf8字符集中没有定义。但是他们会是utf8mb4。
最简单的答案是,查找数据最初来自哪个字符集,并使用相同的字符集构建新的数据表。
MySQL Workbench
在MySQL Workbench中,通过右键单击架构,然后在有问题的表上单击扳手,可以轻松操纵Charset。
SQL语法
或通过类似的方式:
ALTER TABLE YourTableName CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE YourTableName modify name text charset utf8mb4;
答案 1 :(得分:0)
我相信您的varchar长度已满。
例如:在字段varchar(10)中输入“ STRING OVER 10 CHARACTERS”(字符串超过10个字符),这可能会在String上造成垃圾。