报表开发工具中mysql数据库连接编码转化失效解决方案
来源:互联网 发布:费用优化例题 编辑:程序博客网 时间:2024/05/16 15:54
1. 问题描述
在报表开发工具FineReport中,mysql数据库连接通过数据连接编码转换进行编码的转换,在通过报表录入往数据库中录入中文数据的时候,总是出现乱码,这个该怎么解决呢?
2. 解决方案
2.1 检查系统的默认字体
例如查看windows下C/window/fonts的字体样式,如下图:
如果没有以上字体,百度一下缺少字体自行安装,安装之后,已经包含以上的字体如果还是出现问题,则需要参看及修改MySQL字符集。
2.2 参看及修改MySQL字符集
· 查看MySql字符集
MySQL字符集介绍:MySQL的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。
对于字符集的支持细化到四个层次:服务器(server), 数据库(database), 数据表(table), 连接(connection)。
查看默认字符集 (默认情况下,mysql的字符集是latin1(ISO_8859_1)
通常,查看系统的字符集和排序方式的设定可以通过下面的两条命令实现:
1. SHOW VARIABLES LIKE 'character%';//查看字符集 ,如下图:
1. SHOW VARIABLES LIKE 'collation_%';//查看排序方式 ,如下图:
· 修改MySql字符集
方法一:
修改mysql的my.ini文件中的字符集键值。
1. default-character-set = utf8
2. character_set_server = utf8
修改完后,重启mysql的服务,service mysql restart, 使用
1. mysql> SHOW VARIABLES LIKE 'character%';
查看,发现数据库编码均已改成utf8。
方法二:
使用sql命令
1. SET character_set_client = utf8 ;
2. SET character_set_connection = utf8 ;
注:character_set_connection,database,results,server这四个字符一致,就可以不出现乱码。以上修改字符集的方法是windows系统下的,如果是linux系统,使用linux下面的方法即可,思路一样。
修改完成之后,通过
1. show variables like 'character_set_%'
查看字符编码,修改完之后如果还是出现乱码问题。则需要在设计器定义数据连接数修改。
2.3 数据连接修改
在定义数据连接增加URL的地方增加参数
1. ?useUnicode=true&characterEncoding=UTF-8 ,而不是通过定义数据连接窗口下面的编码转换进行设置,如下:
- 报表开发工具中mysql数据库连接编码转化失效解决方案
- mysql数据库连接超过8小时失效的解决方案(springboot)
- 电信业务支撑报表开发工具解决方案
- 报表制作工具中Cannotcreate PoolableConnectionFactory解决方案
- iOS 开发中常用编码格式转化
- Mysql数据库连接超时解决方案
- MySql编码转化问题
- 帆软报表FineReport数据库连接编码转换
- MySQL数据库连接池八小时失效问题
- iOS中编码转化
- iOS中编码转化
- 报表开发工具
- 报表开发工具
- php+mysql开发--数据库连接
- 关于DBCP断网数据库连接失效的解决方案
- Mysql的编码解决方案
- .Net开发中报表工具选择的体会
- C#中MySql数据库连接
- 基于mini2440 的 bootloader 设计 ---- 5、内存初始化
- 素数
- IIS 6文件解析漏洞
- 《算法导论》笔记&习题
- fopen与open的区别
- 报表开发工具中mysql数据库连接编码转化失效解决方案
- 子串
- IOS开发网络篇之──ASIHTTPRequest详解
- 《剑指offer》——数组中的逆序对
- c++异常处理机制
- boost::implicit_cast
- 链表-删除指定元素
- 第一次写博客,记录这一时刻
- Bitcode是什么?