客户端cmd打开mysql,执行插入中文报错或插入中文乱码解决方案
最近在制作一个安装包,需要安装的时候执行mysql脚本儿,做了一个批处理,但是发现总是执行到 插入中文的时候报错,或者插入中文是乱码。
网上查了好多资料,说是把编码改成GBK什么的,终究还是不成功。
最后经过多次测试,现把解决方案分享给大家。
第一步:打开mysql中的配置文件,my.ini,看一看配置文件中
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
看是不是这样配置的。因为utf8 是国际通用的,网上说改成gbk什么的,是不对的,因为很多国外浏览器,都支持utf8,但是换成gbk即使插入数据库,中文不是乱码,
是正常的,当你用某些主流浏览器时,读出来显示的也是乱码。所以建议配置还是用utf8.
这两个配置也是mysql默认的配置,不用改他。那么真正能影响乱码的是,cmd链接mysql的时候。
举个例子:
mysql>uroot p123456
回车
或者网上很多说是这样子:
mysql>uroot p123456 --default-character-set=GBK
回车
以上两种链接方式,都会造成乱码。
重要:下面才是正确的链接方法:
mysql>uroot p123456 --default-character-set=utf8
mysql 保持链接,客户端,服务端,三个地方编码一致,才能不出现乱码。
今天的分享就到这里,至于正确性,我测试了,是正确的。
如果有朋友测试,我的做法还是错我的,请留言告诉我,我清理该帖子,免得误导大家。哈哈
每天早上敲醒自己的不是闹钟,是夢想!