为了账号安全,请及时绑定邮箱和手机立即绑定

解决Mysql字符编码问题

标签:
MySQL


对于大家熟知的mysql数据库,是不是中文字符编码的问题一直困绕着你?

本文以mysql5.5举例,安装方法在此虑过,只说一点:为了程序顺利插入数据到数据库而不出现字符问题,一般都设置mysql编码为utf8编码。然而在命令行模式往往会出现字符编码问题:

1)如在命令行模式下,直接插入中文,插入失败(如图一)

图一(不正确的字符串值)

 

2)用程序(如Java)插入数据成功,使用navicate工具显示是中文,即便是mysql Workbench工具查询依然是中文(如图二),在命令行模式查询的结果却显示是乱码(如图三)

 

图二(显示中文)

 

图三(有数据,却显示乱码)

 

关于解决方法参看以下链接:

 “花飞蝴蝶” 博客,http://jinyabo.blog.51cto.com/3411101/1186030

 

但是有一个问题,如图四

声明:因为已经进入,所以无需再次进行验证

图四(设置失败)

 

这时候,只好到my.ini文件查看,关键看两处(如图五)

(1)default-character-set=utf8

(默认编码设置,一般应与操作系统编码一致)

(修改成default-character-set=gbk)(gb18030不行)

(2)character-set-server=utf8(服务端编码设置)

(默认不需要改,但如果不是utf8,建议改成utf8)

图五(编码)

 

然后再次进入命令行模式,执行查询(如图六)

图六(查询成功)

 

心得:可以把default-character-set理解成客户端,character-set-server理解成服务端。客户端与服务端编码一致当然是最佳拍档!总之要多观察,多研究配置文件。这类问题不一定每次都见到,而一旦出现,便是让人很挠头。比如我之前每次都是utf8安装,用了三年,中文字符插入也没问题,唯独这次,换成64位操作系统后,出现了这个问题。问题出现,可以google,可以百度,然而不一定是你想要的答案,那就自己研究吧,肯定可以解决!

 

感谢:花飞蝴蝶的《关于MySQL数据库乱码的问题总结》文章

©著作权归作者所有:来自51CTO博客作者fylx的原创作品,如需转载,请注明出处,否则将追究法律责任

mysql数据库utf8中文字符MySQL


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消