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。