C# Oracle insert 过程中出现中文乱码问题
上一篇记录了C#实现sql server 2005 和oracle 两个数据库同步工具,今天在将工具拷贝到服务器上运行时出现了同步过来的中文字符变成了乱码,百度一番后解决了该问题,将解决过程记录如下:
1.服务器上安装了独立的Oracle 客户端,百度后发现有人说是oracle 客户端编码与oracle 数据库服务器编码不一致造成的。
修改客户端编码有两种:
一、通过window 注册表,修改;
二、通过环境变量;
我选择的是第二种方式,因为Oracle 客户端不是安装程序,而是一大堆文件;
Oracle 客户端非安装版配置:将客户端文件解压到C:\oracleclient 目录下,然后在环境变量Path 中添加;C:\oracleclient; 。
新建环境变量:NLS_LANG ,变量的值设置为Oracle 数据库服务器的编码:SIMPLIFIED CHINESE_CHINA.ZHS16GBK (备注:Oracle数据库服务器的编码查询方式:select userenv('language') from dual; )
完成后,测试可以实现中文字符的insert;