mysql只能插入特定的中文字符,什么原因? 财富值88

2016-10-21 19:35发布

一开始插入中文出现错误,接着google问题的原因,发现是字符编码问题,配置编码后,就出现了下面这种情况。
我用的是wamp server 集成环境,MySQL版本是5.7.14.

在向一个建好的表中插入中文记录时,比如:

 insert into t2 (name) values ("梅生");

出现ERROR 1366 (HY000): Incorrect string value错误。

但是当我这样插入时:

 insert into t2 (name) values ("梅");

又能正常完成。
好像拼音为 mei 的都可以完成,比如:
mysql> insert into t2 (name) values ("没");
mysql> insert into t2 (name) values ("每");

下面是具体的截图和表的信息。

这是数据库的字符配置:

小弟PHP菜鸟一枚,这是第一次提问,请问有哪位大神能给些线索吗?

google了一下也没发现这种情况,感觉挺神奇的,求大神解答。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答

我猜是你这个shell窗口不支持utf8.

mishen - whatsns产品经理
2楼-- · 2016-10-21 19:39

你的数据库的编码是不是 utf8?
把编码换成 utf8mb4 试试看

客户端把gbk给发过去了. 但服务器却当成utf8来理解. 所以就报错了.

传送门
编码:
梅C3B7
生C9FA

然后具体的请看传送门里的讨论。

但又把编码设成utf8了.

一周热门 更多>