Oracle 8.0使用技巧2000-08-14 15:03:04
  Oracle8企业版提供了多种高效、可靠、安全的数据管理。我们在使用Oracle 8.0.4以及在新的平台上运行过程中积累了一些经验,希望与大家共同交流分享。   解决汉字输入问题   用Oracle Report 3.0进行报表设计时,当输入汉字时,经常会造成软件非法错误,尤其是对已保存再打开进行修改的程序。对此,我们可以通过以下3种方式解决:   1.在用Oracle Developer/2000开发的机器上安装时,语言请选择English(用户的机器选择Simplified Chinese),然后再用Regedit进行注册表编辑,选取“我的电脑”中的“HKEY—LOCAL—MACHINE”下的“Software→Oracle”,选取Oracle下的NLS—LANG,其缺省值为:AMERICAN— AMERICA.WE8ISO8859P1,按“编辑”下的“修改”,键入Server端NLS— LANG的值,可选择SIMPLIFIED CHINESE—CHINA.ZHS16CGB231280或AMERICAN—AMERICA.ZHS16CGB231280。   2.在开发过程中,尽量在第一次将所有汉字输入完毕,待以后再进行调整。   3.当在Report 3.0输入汉字产生非法错误时, 可用NOTEPAD输入汉字后保存在文件中,然后在Report 3.0 选单“File→Import→Text…”,选择该文件,即可将该文件中的汉字输入。   客户端省略数据库串的配置   客户端在用“SQL Net Easy Configuration”成功配置数据库别名(如todec)后,在客户端每次连接数据库时,都要键入数据库别名,给用户造成了一定的不便,我们可以通过以下方法来解决:   在Windows 95上选择“开始”按钮,启动“运行”图标,键入Regedit,进行注册表编辑。选取“我的电脑”中的“HKEY—LOCAL—MACHINE” 下的“Software→Oracle” 。在“注册表编辑器”选单上选取“编辑→新建→串值(S)”项,将新建的串值名改为local,键值为todec。 

解决方案 »

  1.   

    把你的转码后的sql打印出来看看。
      

  2.   

    试试这个看看,我对sqlserver、access都用过,可以转成功,不知道对oracle有无作用
    读取转换
    msg = new String(msg.getBytes("ISO-8859-1"),"gb2312");
    写入转换
    msg = new String(msg.getBytes("gb2312"),"ISO-8859-1");
      

  3.   

    我用out.print(qry),各种转换的结果均把中文显示为?号,其他的没有改变
      

  4.   

    还有我最终要用的数据库是sql server,oracle对系统配置要求太高了