mysql编码问题

最重要的一点:要搞清楚客户端支持什么编码格式,支持utf8就用utf8操作数据,只支持gbk就用gbk操作,否则就会出现中文乱码现象,

在命令行模式下操作数据时首先要设置编码格式为gbk  命令为:set names gbk;     然后再进行数据库的增删改查即可保证中文在客户端下存取不乱码。

简单的说,打个比喻,一个人不会游泳,你非让他游泳,结果就会出问题,他只会走路,你就告诉他走过去就行了,别告诉他游泳过去,会出问题的。

好了接着讲

客户端操作,查询的编码

在客户端与 服务器端交互时,存在两个重要的编码:

1,  客户端发送数据的编码

2,  客户端接收到服务器数据编码!

可以通过 show variables like ‘character_set_%’ 展示以 character_set开头变量,其中就有上面的两个值:

 

在命令行客户端下:

该客户端,只能是gbk编码!

 

使用 set 变量名 = 变量值的形式更改变量值!

 

set names gbk,就是一个快捷操作,将上面两个配置同时更改成目标编码!

set names gbk|utf8 取决于,客户端所能接受的编码!

整体流程:

 

set names gbk|utf8。

原文地址:https://www.cnblogs.com/xiaogou/p/9168184.html