MySQL数据库乱码问题

来源:互联网 发布:目前云计算好不好就业 编辑:程序博客网 时间:2024/05/16 11:56

1、从用户连接数据库到对数据库进行存储一共有四个方面需要注意编码问题
通过查找命令 show variables like '%char%'来查看数据库的编码,如图所示

这里写图片描述

从上图可以得知涉及到编码的一共有7个地方,

  1. character_set_client:客户端的字符集。
  2. character_set_connection:客户端跟数据库之间传输数据的时候用到的编码字符集,也就是说,传输数据时要将客户端的数据使用这个编码进行编码,传给数据库。
  3. character_set_database:数据库编码字符集。数据库以该字符集编码格式存储起来。
  4. character_set_filesystem:数据库文件系统字符集。一般与乱码无关。
  5. character_set_results:数据库以此种字符集编码方式将结果返回给客户端。与乱码有关
  6. character_set_server:数据库默认字符集,若是在创建数据库时指定了编码则一般与乱码无关。
  7. character_set_system:服务器用来存放标识符使用的字符集。与乱码无关。

    所以跟乱码有关的一般就是:character_set_client、character_set_connection、character_set_database、character_set_results
    其中要说明的是character_set_connection的指定:在配置文件中可以使用

<property name="connection.url">jdbc:mysql://localhost:3306/gaden?characterEncoding=utf-8</property>

来指定

0 0