嘉博

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

最近迁移一个.net应用系统从32位Windows2003升级到64位的Windows2008中,发现所有涉及中文的内容插入到Oracle数据库中都变为?,最开始以为是2008系统的字符集与Oracle数据库中得不一致,检查发现NLS_LANG都是SIMPLIFIED CHINESE_CHINA.ZHS16GBK,是一致的。

网上狂找一遍,基本提供的思路都是设置客户端与数据库端字符集一致的方式,问题是我这已经是一致了,问题还是没解决。

几经折腾,无意间设置了数据库连接字符串字符集,问题居然得到解决。具体解决方式如下:

原来数据库字符串为:User Id=XXX;Password=XXX;Data Source=oraXXX;

改成:User Id=XXX;Password=XXX;Data Source=oraXXX;Unicode=True;

在由于客户端操作系统为64位操作系统,所以需在连接字符串中加入Unicode=true设置,问题得到解决。

posted on 2013-08-22 10:22  嘉博  阅读(553)  评论(0)    收藏  举报