8i升级到9i,同是使用zhs16cgb231280字符集。但发现有如下不同:使用oracle提供的OLE DB 驱动程序,发现读出来的英文字符
8i下是一个字节
9i下是两个字节,后面跟了00什么原因,还是就是这样的?如果是这样,那前台程序不是要大改了?

解决方案 »

  1.   

    你用SQLPLUS读出来也是这样的么?
    升级应该不会有什么问题的,可能还是你的OLE DB驱动有些问题了
      

  2.   

    SQL Plus读出来是看不出来的,只能看到abcd是从二进制中看出来的。OLE DB驱动是装9i的客户端自己带的,并没有重新安装。
      

  3.   

    如果你的Oracle沿革时间较长,
    请把字段中的varchar数据类型改为varchar2吧(先改一个数据量小的非重要的表)。
      

  4.   

    是不是字符编码的问题,我想有可能被转化为宽字节编码了,是不是要加编码转化函数转化.
    具体我太清楚.帮你ding...