VS2010通过oracle client插入中文到oracle乱码问题

百度的说法有2种。不过总的思路还是统一服务器oralce的NLS_LANG和目标服务器的NLS_LANG变量。

方法1:添加环境变量。变量名称:NLS_LANG  变量值:SIMPLIFIED CHINESE_CHINA.al32utf8(注:1)

步骤:计算机-->属性-->高级系统设置-->高级-->环境变量-->手动添加。  

实验结果:失败(仅仅代表我的情况测试结果)

注1:此变量值为要插入的服务器oralce的环境变量NLS_LANG值。要你的服务器和接收数据的服务器两边一致

查询接收服务器环境变量语句:select userenv('language') from dual;


方法2:更改程序服务器的oracle注册表信息。也是更改成和目标服务器oracle:NLS_LANG的值一样。

32位oracle目录:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\ORACLE\HOMExx\NLS_LANG

64位oracle目录:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG

步骤:开始-->regedit-->找到上述注册表地址-->修改变量值(NLS_LANG)   (注2)

实验结果:= =囧,结果我的注册表到HKEY_LOCAL_MACHINE\SOFTWARE\之后找不到oracle目录了。之后没办法。卸载了原来的oracle,并且重新在原目录安装了一个信的oracle。注册表ORacle目录有了,之后发现又没有NLS_LANG变量。手动加了个变量。之后成功~~

注2:我有目录但是没有找到此变量。自己重新创建的。




你可能感兴趣的:(C#)