Linux 和windows中文乱码

yan2865 2011-01-19 02:42:19
在linux下使用程序将一个GBK编码的数据文件插入到Windows下的Oracle数据库中,使用Sql Plus查看数据,sql plus终端显示是乱码。Oracle数据库字符编码和终端字符编码是AMERICAN_AMERICA.ZHS16GBK,请教高手解决!
...全文
413 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
iqlife 2011-01-20
  • 打赏
  • 举报
回复
首先确定是插入数据的时候编码不对,插入完后查看用服务器端的SQL PLUS查看是否乱码,如果是,说明是插入的时候编码不匹配
如果是在WINDOWS的SQL PLUS客户端查看的时候编码不对,则此时问题出现在WINDOWS 客户端,查看客户端版本匹配问题,以及字符编码匹配
yan2865 2011-01-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 java3344520 的回复:]

用Linux下的程序插入到Windows下的Oracle中,显示的是乱码呢??

什么程序?WEB服务器?
服务器编码和页面编码都正确么
[/Quote]
对micaps数据格式解析的程序,把解析好的数据入库,然后在windows上查询。
iqlife 2011-01-19
  • 打赏
  • 举报
回复
用Linux下的程序插入到Windows下的Oracle中,显示的是乱码呢??

什么程序?WEB服务器?
服务器编码和页面编码都正确么
yan2865 2011-01-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 iihero 的回复:]
引用楼主 yan2865 的回复:
在linux下使用程序将一个GBK编码的数据文件插入到Windows下的Oracle数据库中,使用Sql Plus查看数据,sql plus终端显示是乱码。Oracle数据库字符编码和终端字符编码是AMERICAN_AMERICA.ZHS16GBK,请教高手解决!

linux下,确保你当前使用的是LANG=zh_CN.gbk
并且NLS_LANG环境变……
[/Quote]

改了LANG还是显示???

Windows默认是GBK
Oracle客户端和数据库编码都是GBK
Linux LANG变量也是GBK
怎么用Linux下的程序插入到Windows下的Oracle中,显示的是乱码呢??
yan2865 2011-01-19
  • 打赏
  • 举报
回复
“linux下,确保你当前使用的是LANG=zh_CN.gbk”

请问楼上这个在哪里修改呢?linux下的.bashrc里的字符编码已经改成GBK了
iihero_ 2011-01-19
  • 打赏
  • 举报
回复
[Quote=引用楼主 yan2865 的回复:]
在linux下使用程序将一个GBK编码的数据文件插入到Windows下的Oracle数据库中,使用Sql Plus查看数据,sql plus终端显示是乱码。Oracle数据库字符编码和终端字符编码是AMERICAN_AMERICA.ZHS16GBK,请教高手解决!
[/Quote]
linux下,确保你当前使用的是LANG=zh_CN.gbk
并且NLS_LANG环境变量也是AMERICAN_AMERICA.ZHS16GBK
这样insert进去的才是对的。

iqlife 2011-01-19
  • 打赏
  • 举报
回复
美女啊,



设置下客户端的字符集,参考
http://blog.csdn.net/java3344520/archive/2010/04/10/5469843.aspx

1,617

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧