Mac下,MySQL数据库中文乱码的解决方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dhmkgld/article/details/50256095

在Mac下安装MySQL数据库,作为本地数据库使用。但向数据库中导入数据时一直中文乱码,试了很多方法都没有解决。终于在熬夜奋战了近3个小时后,把问题解决了(虽然还是不明白原因细节)。先上图:
导入中文数据成功

解决方案:导入时,选择GBK格式。(总的来讲,有点瞎猫碰上死耗子,歪打正着的解决了。不知道中间的哪一步改动影响了最后结果,甚至中间尝试都是不需要的)

解决过程:
首先,我先参照网上的各种教程,试图修改数据库的编码格式,但是各种修改尝试N次后还是没有成功——刚开始觉得是数据库编码格式造成的。

然后,我寻找查看数据库编码方式的方法,找到一篇文章,讲得很清楚(参考链接3),查看后发现编码格式都是utf8——想到navicat中是支持录入中文的,只是导入中文乱码。

最后,从navicat导入中文乱码的原因查起,发现有篇文章描述的情况,跟我遇到的十分相似,即参考链接1,随即尝试了一下:set names gbk,然后选择GBK格式导入文件,终于成功了!(^o^)/~

但随后我发现,不管我set names 格式 如何设置,选择GBK格式导入,都不会再乱码。所以最后问题虽然解决了,但还是没有搞清楚详细原因。希望有高手能指点一下。


所遇问题的详细描述:

问题一:数据库完全不支持中文,如下图即使在可视化工具navicat中直接敲入中文,保存刷新后,还是会出现“?”。
敲入中文:
敲入中文

敲入中文刷新后:
敲入中文刷新后

问题二:新建一个数据库,并且将数据库属性设置为:utf8,之后便支持敲入中文了,如下设置:
新建utf8属性的数据库

建好utf8属性的数据库后,直接在navicat中敲入中文,还是支持的(解决问题的第一个小惊喜O(∩_∩)O~)
支持敲入中文

但是导入数据时,中文还是会乱码,如上图中字段cityname的其他值。

终于在费了九牛二虎之力后,有点糊里糊涂的解决了,O(∩_∩)O~


最终解决方法参考文章:
1.http://zhidao.baidu.com/link?url=aWGN0SIX7TiwbK5n5-hDhDaMsvVPoa-lJCHoWOBy4Kx_lP_s2-WF-erdgTVs5jI-tlHe-lg_MN9D7H-15CyDM_(最后启迪性的信息)

之前试图修改数据库编码格式的有效参考文章:
2. http://blog.sina.com.cn/s/blog_8a3a624901018j83.html(文中提到修改编码格式的一个语句,如: set names utf8)
3. http://blog.csdn.net/sunboyzsm/article/details/17511511(文中提到各种查看编码格式的语句)
4. http://www.jianshu.com/p/326c1aaa1052(里面提到新建数据库时的格式选择)

展开阅读全文

没有更多推荐了,返回首页