反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

MySQL数据库中文乱码

  • 文档创建者:文档助手1
  • 历史版本:22
  • 最近更新:Carly 于 2023-06-08
  • 1. 问题描述

    MySQL 数据库连接通过设计器上进行编码的转换后,在通过报表录入往数据库中录入中文数据的时候,总是出现乱码,这个该怎么解决呢?

    2. 解决方案

    2.1 参看及修改 MySQL 字符集

    1)查看 MySQL 数据字符集

    MySQL 字符集介绍:MySQL 的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。

    对于字符集的支持细化到四个层次:服务器( Server), 数据库(Database), 数据表(Table), 连接(Connection)。

    查看默认字符集 (默认情况下,MySQL 的字符集是 latin1(ISO_8859_1)

    通常,查看系统的字符集和排序方式的设定可以通过下面的两条命令实现:

    SHOW VARIABLES LIKE 'character%';//查看字符集

    如下图:

    SHOW VARIABLES LIKE 'collation_%';//查看排序方式

    如下图:

    2)修改 MySQL 字符集

    方法一:

    修改 MySQL 的 my.ini 文件中的字符集键值。

    default-character-set = utf8 character_set_server = utf8

    修改完后,重启 MySQL 的服务,service mysql restart, 使用

    mysql> SHOW VARIABLES LIKE 'character%';

    查看,发现数据库编码均已改成 UTF-8。

    方法二:

    使用 SQL 命令

    SET character_set_client = utf8 ; SET character_set_connection = utf8 ;

    注:character_set_connection,database,results,server 这四个字符一致,就可以不出现乱码。以上修改字符集的方法是 Windows 系统下的,如果是 Linux 系统,使用 Linux 下面的方法即可,思路一样。

    修改完成之后,通过

    show variables like 'character_set_%'

    查看字符编码,修改完之后如果还是出现乱码问题。则需要在设计器定义数据连接数修改。

    2.2 数据连接修改

    在定义数据连接增加 URL 的地方增加参数

    ?useUnicode=true&characterEncoding=utf8

    如下:

    注意需要将图示中的编码设置为自动。一般情况数据连接这里新增了编码参数乱码问题就可以解决了,若还没有解决,再往下看

    2.3 检查系统的默认字体

    例如查看 Windows 下C:\WINDOWS\Fonts\的字体样式,如下图:

    如果没有以上字体,百度一下缺少字体自行安装,安装之后,已经包含以上的字体如果还是出现问题,则需要参看及修改 MySQL 字符集。

    服务器下安装字体参见文档:服务器安装字体

    附件列表


    主题: 报表专题
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526