加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle 数据导入 数据和备注(comment)乱码问题解决办法

发布时间:2020-12-12 16:39:04 所属栏目:百科 来源:网络整理
导读:1 源数据库: 字符集 :SIMPLIFIEDCHINESE_CHINA.AL32UTF8 EXP导出客户端字符集(windows导出): NLS_LANG=SIMPLIFIEDCHINESE_CHINA.ZHS16GBK 2 目标数据库: 字符集 :SIMPLIFIED CHINESE_CHINA.ZHS16GBK IMP导入客户端字符集(linux客户端导入) :zh_CN.UTF-8 导

1 源数据库:

字符集:SIMPLIFIEDCHINESE_CHINA.AL32UTF8

EXP导出客户端字符集(windows导出):NLS_LANG=SIMPLIFIEDCHINESE_CHINA.ZHS16GBK

2 目标数据库:

字符集:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

IMP导入客户端字符集(linux客户端导入):zh_CN.UTF-8

导入出现的问题:

1 在PL/SQL中查询数据为乱码

2 表注释为乱码

解决问题1:在PL/SQL中查询数据为乱码

数据查询乱码,如果源数据库和目标数据库字符集不冲突的话,可以考虑为PL/SQL所在的客户端的字符集问题。

在PL/SQL所在的客户端(pl/sql都装在windows上)环境变量中增加:


至此,查询结果正常。

解决问题2:表注释为乱码

因为是在linux端进行imp导入的,在Linux端执行export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK,然后进行imp重新导入,发现注释正常。

总结:一般出现乱码,考虑三方面的问题:

1.1 导入后如果查询数据为乱码,查看PL/SQL所在客户端的字符集,修改为中文字符集。

1.2 导入后如果查询数据为乱码,查看源端和目标端的字符集是否包含(修改数据库字符集比较复杂,不建议)

2 导入后如果表注释为乱码,查看导入客户端的字符集是否和导出端的字符集是否一致。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读