暂无图片
字符集转换及设置
我来答
分享
无语的跑步
2020-02-12
字符集转换及设置

一个汉字在a机器通过sqlplus存入b机器数据库。a机器windows gbk,sqlplus nls_lang设置为oracle数据库的al32utf8.b机器centos7,en_us,操作系统字符集utf8,数据库字符集al32utf8.在b机器使用sqlplus查询这个汉字为乱码,设置nls_lang=american_america.zhs16gbk也无法正常显示这个汉字。请问该如何在b机器正常显示这个乱码汉字

我来答
添加附件
收藏
分享
问题补充
6条回答
默认
最新
沈宏

设置nls_lang=american_america.al32utf8

暂无图片 评论
暂无图片 有用 0
无语的跑步

无效

暂无图片 评论
暂无图片 有用 0
你好我是李白

sqlplus传入汉字,是用了类似secureCRT,xshell这类工具吗?建议看看这类工具的字符集设置,排查是否与工具字符集设置有关。

暂无图片 评论
暂无图片 有用 0
blueice

在A机器插入数据的时候将环境变量临时设置为utf-8

暂无图片 评论
暂无图片 有用 0
无语的跑步

就是因为a机器设置了nls_lang=american_america.al32utf8,才导致gbk存入了al32utf8

暂无图片 评论
暂无图片 有用 0
范计杰

尝试设置
export NLS_LANG=american_america.al32utf8
同时设置ssh客户端显示为gbk

如果不行,可以同时设置以下两个试一下
export NLS_LANG=american_america.al32utf8
export LANG=zh_CN.GBK
设置ssh客户端显示为gbk

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏