因为我的另外一个数据库内部的应用需要调用这里的数据,所以必须得用Oracle存储过程。

解决方案 »

  1.   

    我也遇到了这个问题,Oracle安装后的字符集为ZHS16GBK,我用C++Builder连接数据库后,里面所有汉字都成了#。但是我今天用JCreator写了个JDBC的Java程序,在荧屏上输出有是正常!你把数据库的字符集换成“ZHS16CGB231280”试试,我通过Oracle SQL Worksheet用下面的语句修改:
    update NLS_DATABASE_PARAMETERS set value = 'ZHS16CGB231280'where parameter = 'NLS_CHARACTERSET' or parameter = 'NLS_NCHAR_CHARACTERSET';却在value附近出现“此处不能为虚列”的错误,搞不懂!
      

  2.   

    yyfzy(singler),你好。感谢你的建议!!我遇到的问题也是这样,我在Oracle之外,使用JCreator, JBuilder, Delphi获得的数据都正常。就是在Oracle系统内部运行的Java应用不正常,PL/SQL程序也是没有问题的。
    Oracle里面运行的Java应用仅仅在文件遍历的地方有问题,在其他的中文处理的时候都没有问题。我也曾经尝试使用Oracle的JDeveloper来试验这个问题,JDeveloper的JDK版本和Oracle数据库的JDK版本也都是1.3的。按道理说应该有一样的问题,但是同样的应用使用JDeveloper来运行就没有问题了。真的是感觉很奇怪。