我们在命令行操作中文时,会报错
insertinto user(username,password) values(‘张三’,’123’);
ERROR1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column'username' at row 1
原因:因为mysql的客户端编码的问题我们的是utf8,而系统的cmd窗口编码是gbk
解决方案(临时解决方案):修改mysql客户端编码。
showvariables like 'character%'; 查看所有mysql的编码
client connetionresult 和客户端相关database serversystem 和服务器端相关
将客户端编码修改为gbk.
setcharacter_set_results=gbk; / set names gbk;
以上操作,只针对当前窗口有效果,如果关闭了服务器便失效。如果想要永久修改,通过以下方式:
在mysql安装目录下有my.ini文件
default-character-set=gbk客户端编码设置
character-set-server=utf8服务器端编码设置
注意:修改完成配置文件,重启服务