Oracle开发之中文乱码的问题(二)
2013-07-24 22:39
489 查看
c#访问Oracle,本来是很常见的,但是在实际的工作中确实遇到了各种各样的异常,特此分析并总结如下,以便以后查找方便:
数据库的字符集常用的两种方式:
美国编码SIMPLIFIED CHINESE_CHINA.US7ASCII
中国编码SIMPLIFIED CHINESE_CHINA.ZHS16GBK
连接方式:
1.OLEDB连接
OLEDB连接Oracle分为两种方式,即分别微软和Oracle写的不同的驱动。
provider=MSDAORA.1是微软写的驱动
provider=OraOLEDB.Oracle是Oracle自带的驱动
小结:
使用MSDAORA.1驱动的OLEDB连接,不管数据库字符集是美国编码US7ASCII还是中国编码ZHS16GBK,都不会出现乱码,若出现乱码,可能是本地Oracle与服务端Oracle字符集不相同导致的。需要修改注册表nls_lang变量。但是,在X64位Oracle上使用MSDAORA.1时,会出现未在本地计算机上注册“MSDAORA.1”提供程序的问题。也就是说MSDAORA.1在64位的Oracle支持不好。
使用ORAOLEDB.ORACLE驱动的OLEDB连接,对中国编码ZHS16GBK支持很好。若Oracle字符集是美国编码US7ASCII,数据读取无乱码,写入有乱码,并且做为where条件传进去的中文参数为乱码。
ORAOLEDB.ORACLE对Oracle的32位或者64位不受影响。
2.其他的连接方式
参考博客:
/article/9251259.html;
数据库的字符集常用的两种方式:
美国编码SIMPLIFIED CHINESE_CHINA.US7ASCII
中国编码SIMPLIFIED CHINESE_CHINA.ZHS16GBK
连接方式:
1.OLEDB连接
{Provider=MSDAORA.1;User ID=martin;password=1;Data Source=orcl;Unicode=True;Integrated Security=yes;Persist Security Info=False}
{Provider=ORAOLEDB.ORACLE;User ID=martin;password=1;Data Source=orcl;Unicode=True;Persist Security Info=False}
OLEDB连接Oracle分为两种方式,即分别微软和Oracle写的不同的驱动。
provider=MSDAORA.1是微软写的驱动
provider=OraOLEDB.Oracle是Oracle自带的驱动
小结:
使用MSDAORA.1驱动的OLEDB连接,不管数据库字符集是美国编码US7ASCII还是中国编码ZHS16GBK,都不会出现乱码,若出现乱码,可能是本地Oracle与服务端Oracle字符集不相同导致的。需要修改注册表nls_lang变量。但是,在X64位Oracle上使用MSDAORA.1时,会出现未在本地计算机上注册“MSDAORA.1”提供程序的问题。也就是说MSDAORA.1在64位的Oracle支持不好。
使用ORAOLEDB.ORACLE驱动的OLEDB连接,对中国编码ZHS16GBK支持很好。若Oracle字符集是美国编码US7ASCII,数据读取无乱码,写入有乱码,并且做为where条件传进去的中文参数为乱码。
ORAOLEDB.ORACLE对Oracle的32位或者64位不受影响。
2.其他的连接方式
参考博客:
/article/9251259.html;
相关文章推荐
- Oracle开发之中文乱码的问题(一)
- 网站开发笔记:PHP oci连接Oracle中文乱码问题解决方案
- cx_Oracle 中文乱码问题解决
- oracle ---中文乱码问题
- BS开发技巧之四: 处理取中文参数出现乱码问题
- ArcGIS API for javascript开发笔记(三)——解决打印输出的中文为乱码问题
- Oracle客户端查询中文出现乱码的问题
- java web开发时表单提交引起的一些中文乱码问题
- pl/sql developer中文乱码,为什么呢?怎么解决?Oracle问题
- MYSQL数据抽取从utf8 到ORACLE ZHS16GBK 中文乱码的问题
- VS2010通过oracle client插入中文到oracle乱码问题
- JSP开发中文乱码问题
- 移动开发 - Android - 读取assets目录下的txt文件(中文乱码问题)
- javaweb开发中中文乱码问题的解决方案
- Oracle导入sql文件数据,中文乱码问题解决方案
- 关于JSP开发过程中的几种中文乱码问题的解决方案
- 学习iOS开发之使用ZBar扫描二维码中文乱码问题
- python开发环境PyScripter中文乱码问题解决方案
- oracle insert中文数据,查询出现乱码问题解决
- 安卓开发中用volley框架请时,中文返回乱码问题