问题:原数据库的字符集是utf8 但是应用程序在对数据库操作时使用 AMERICAN_AMERICA.WE8ISO8859P1字符集,这样当数据库在做报表统计时,显示的结果就是乱码(因为报表统计时,客户端字符集使用的是UTF8)
为了解决这个问题,做了以下操作
原数据库客户端字符集:AMERICAN_AMERICA.WE8ISO8859P1
原数据库服务器端字符集:NLS_CHARACTERSET UTF8 NLS_NCHAR_CHARACTERSET UTF8
目标数据库客户端字符集:AMERICAN_AMERICA.UTF8
目标数据库服务器端字符集:AMERICAN_AMERICA.UTF8
步骤:
1.将客户端字符集设置为AMERICAN_AMERICA.WE8ISO8859P1
2.使用plsql devloper 将数据库数据导成 *.pde 格式的文件 -- pde格式文件是 plsql devloper 自定义的一种格式
3.修改客户端字符集 为 AMERICAN_AMERICA.UTF8
4.重新登陆 plsql devloper 使用 tool 菜单中的export table 功能 将已经导出的*.pde 格式文件 导入目标数据库
5.到此已经完成乱码数据的转换,但这种转换只适用数据量比较少的情况
现在重新进行统计分析 ,得出的统计结果显示没有问题
注:这个功能是plsql devloper 提供的一项功能
使用pl/sql developer 转换数据(适用数据量不大的转换)
最新推荐文章于 2020-12-24 12:51:48 发布