首页 > 数据库技术 > 详细

解决mysql和navicat编码不一致问题

时间:2019-09-20 16:43:21      阅读:303      评论:0      收藏:0      [点我收藏+]

1,在数据库mysql命令行中,先选中数据库,比如use test
然后执行charset utf8  //改变编码

2,然后查询已经存入的表中的汉字记录。看看有没有乱码,如果没有乱码说明存入数据库的数据(或者说navicat编码)就是utf8

3,如果是乱码,就不断的切换编码(charset gbk, charset gb2312.....),直到select显示的结果不现乱码

4,假如你设置charset gbk后,select 的汉字不是乱码,说明你的数据库中已经存了gbk的汉字了,对于其它乱码数据,那没办法,数据库中的数据只能删除了重新录入。

 

要充分理解mysql字符集有很多环节的概念,最重要的3个:
database:就是数据库内部存储字符串用的编码
connect :就是通过socket与mysql通信时的网络编码;
client:mysql命令终端和navicat都属于客户端,后台那个mysql进程才属于服务端(server);
以上3个字符集必须都一样。如果database和connect都是utf8,而client是gbk,那么你再通过utf8的编码去select出来,肯定是乱码。

解决mysql和navicat编码不一致问题

原文:https://www.cnblogs.com/wskb/p/11557331.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!