反饋已提交

網絡繁忙

MySQL数据库中文乱码

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=UTF-8

如下:

1.png

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

2.3 检查系统的默认字体

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

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

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

附件列表


主題: 原简体文档
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙