关于Oracle数据库中数据乱码的问题

做软件的朋友,在做国际化程序时大多会遇到oracle数据库乱码的问题,究其原因都是字符集惹的祸。(比方说数据库服务器在韩国,其字符集为KO16KSC5601,而我们本地的为ZHS16GBK,像这样的情况下,我们去访问韩国数据库服务器时都会出现乱码的问题)
为了实现数据的正常显示,可按照如下步骤进行修改。
1:首先,安装oracle 的client或server端(选择的字符集为标准UTF-8)
2:修改注册表里oracle项 HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_OraDb10g_home1
将NLS_LANG的键值 SIMPLIFIED CHINESE_CHINA.ZHS16GBK改为  KOREAN_KOREA.KO16KSC5601(american_america.US7ASCII)
  并在KEY_OraDb10g_home1下增加类型为字符串的 ORA_NLS_CHARACTERSET_CONVERSION  项,其键值为NO_CHARACTER_SET_CONVERSION
3:修改tnsnames.ora文件,tnsnames.ora文件为oracle建立数据连接的文件, 具体目录为D:/oracle/product/10.1.0/db_1/NETWORK/ADMIM 下(如果是oracle9i的话,tnsnames.ora文件的位置会有有所变化),在tnsnames.ora添加如下
   代码  
 
TEST =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = ip地址)(PORT = 端口号))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = TEST )

    )

  )

  TEST 为oracle数据库名
 4:配置完成后,在cmd下 输入命令 tnsping TEST 
  输出如下信息
 
TNS Ping Utility for 32-bit Windows: Version 10.1.0.2.0 - Production on 22-11月-2007 08:31:23

Copyright (c) 1997, 2003, Oracle.  All rights reserved.

已使用的参数文件:
d:/oracle/product/10.1.0/db_1/network/admin/sqlnet.ora


已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ip地址)(PORT = 1525))) (CONNECT_DATA = (SERVICE_NAME = TEST )))
OK (660 毫秒)
则表示成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值