Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1919910
  • 博文数量: 261
  • 博客积分: 8073
  • 博客等级: 中将
  • 技术积分: 2363
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-10 15:23
文章分类

全部博文(261)

文章存档

2013年(1)

2012年(1)

2011年(50)

2010年(34)

2009年(4)

2008年(17)

2007年(55)

2006年(99)

分类:

2010-10-15 09:23:24

 
现象:
 
    导入数据包括中文,导入后,用PL/SQL DEV查看,发现数据中的中文是乱码。
 
分析:
 
    数据导入时,客户端会读取NLS_LANG变量,获取客户端字符集,然后根据NLS_LANG的设置,对数据进行编码后,存入数据库。
 
    从数据库读取数据时,根据数据库中的语言设置,对数据进行解码后显示。
 
    我的问题在于 客户端与服务器端 的语言设置不一致。
 
    客户端字符集设置:NLS_LANG=AMERIACAN_AMERICAN.ZHS16GBK
 
    服务器端字符集设置:SQL>select userenv(‘language’) from dual;
 
                     SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    两者不一致,导致乱码
 
解决办法:
 
   在/etc/profile中加入
 
   NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
 
参考资料:
阅读(1288) | 评论(0) | 转发(0) |
0

上一篇:SUN CC 编译的问题

下一篇:Pspad 和 WinMerge

给主人留下些什么吧!~~