发现V.NET2003 
1、调用system.data.oracleclinet连接oracle9i(simplified chinese_china.zhs16gbk字符集),连接和操作一切正常;而当连接数据库oracle9i(AMERICAN_AMERICA.WE8ISO8859P1字符集时)(数据库通过教本重新生成数据库实例而非导入),连接正常而检索获得的都是乱码 
2、调用oledb for orcale连接oracle9i数据库(针对上述两种情况)时不论字符集是何种都可以正常操作和检索,没有任何乱码现象。 现发现使用oracleclient连接AMERICAN_AMERICA.WE8ISO8859P1字符集(其他非中文字符集)的oracle9i数据库的检索结果都出现了乱码,而oledb则不会,但是oledb不能满足所有功能需要。 
不知道那位大侠是否也碰到过类似问题又是怎么样解决的。 因为原有业务系统是AMERICAN_AMERICA.WE8ISO8859P1字符集下的oracle数据库,需要数据通讯和对接,所以连接的必须是AMERICAN_AMERICA.WE8ISO8859P1字符集数据库,而不能改为中文字符集。

解决方案 »

  1.   

    换一个驱动试试呢
    比如到oracle网站上下一个 Oracle ODBC Drivers
      

  2.   

    关键是我现在已经在客户那里了,客户在云南,而我们公司在杭州。。
    换了驱动。客户那也没装。net,
    咳,麻烦亚
      

  3.   

    我想原因是字符集不兼容引起的。
    想保证:
    客户端业务数据的字符集与oracle server端的字符集一致;
    oracle client 与server的字符集一致;
    oracle server与操作系统的一致;