mysql乱码问题

    最近有人跟我说关于mysql中文乱码的问题,最终总结如下:

1)在mysql客户端下查询数据之前先:set names gbk;

     mysql乱码问题

2)在连接mysql数据库过程中设置编码:jdbc:mysql://localhost:3306/xxx.db?useUnicode=true&characterEncoding=utf-8;

   作用是:指定字符的编码、解码格式。
   假设你mysql数据库使用的编码格式是gbk,而项目那边设置的是utf-8编码格式,则useUnicode=true&characterEncoding=utf-8的作用可分为如下两步:
   a. 存数据时:

       数据库在存放项目数据时会先用utf-8的格式将数据解码成字节码,然后再将解码后的字节码重新按gbk的编码格式存放到数据库中。

   b.取数据时:

       在从数据库中取数据时,数据库会先将数据库中的数据按gbk编码格式解码成字节码,然后再将解码后的字节码重新按utf-8的编码格式重新编码,最后再将数据返回给客户端。

mysql乱码问题

上一篇:Oracle,第一周


下一篇:MongoDB学习笔记(三)--权限 && 导出导入备份恢复 && fsync和锁