人大金仓数据库乱码问题分析

您所在的位置:网站首页 人大金仓数据库缺点和优点 人大金仓数据库乱码问题分析

人大金仓数据库乱码问题分析

2024-05-30 03:35| 来源: 网络整理| 查看: 265

乱码的问题通常都是编码不一致导致。

分析步骤

第一 落实应用的编码是什么。需要询问应用的开发人员。

第二 落实JVM的file.encoding 是什么?一般Windows环境是GBK,linux是UTF8。

第三 如果应用的编码和JVM的file.encoding一致,JDBC默认使用JVM的编码,不需要额外指定clientEncoding参数。否则需要指定JVM的-Dfile.encoding=GBK或者JDBC的clientEncoding参数

第四 如果还是报无效编码错误,就把JDBC日志打开到INFO或者TRACE,确认连接串信息对不对,再去看日志里是否有乱码数据。

编码解释

1:系统JVM的默认编码:file.encoding 通常和操作系统默认编码一样。当然用户可以同过jvm参数-Dfile.encoding=UTF8 来手动指定期望的编码格式。JDK1.7及以上的可以通过命令java -XshowSettings:properties –version 产看jvm参数值。

2:应用的编码:应用开发的时候自己指定的编码格式。通常应用的编码是要和运行环境的jvm的file.encoding保持一致。

3:JDBC的编码:JDBC通过参数clientEncoding指定编码格式,包括JDBC发给数据库的内容和返回给应用的内容都是按clientEncoding编码。通常需要和应用的编码保持一致。

4:数据库的编码:

client_encoding 就是客户端编码,JDBC通过clientEncoding指定。

server_encoding 就是服务端编码,这个是数据库自身存储时的编码。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3