最近在学习后端的相关知识,就用到了PHP Apache以及mySQL .
在学习mySQL时遇到了一个无法插入数据的错误。从网上也搜了一些解决办法。大多都是在说 将之前的修改字符集的编码改为utf8.可是试过之后,依然报错。在摸索了一段时间之后,知道了问题的根源然后得以解决。
我自己的问题解决了,希望也能给各位提供到帮助。解决办法如下:
1、登录mysql客户端。
2、use 对应数据库
3、先查看当前数据库的value值 show variables like ‘%char%’ 是否为utf8.如果不是就用 alter database 数据库名字 charset utf8;
4、错误中提示是name属性的值插入不进去,那我就考虑是不是中文字符插入有问题。 然后就将编码改为gbk; set character_set_client=gbk; 结果可以插入了,但是名字是乱码的,
5 、我们刚才设置的是插入时是可以接收中文字符的。那么我们也将输出结果也改为GBK试一下。 set character_set_results=gbk;
现在结果应该是可以得了。希望能帮助到大家。
同样的,当我们用php脚本实现功能的时候,如果出现乱码的情况,就只需要我们在连接数据库的语句之后加入mysql_query("set names 'gbk'")