| 关键词: nbsp 字符集 变量 oracle 乱码 数据库 注册表 测试 方法 一致 |
程序员经常要连接数据库 下面 就说一下 oracle数据库 客户端与服务器端 字符集一致性的问题 这可以解决中文乱码,其他字符乱码问题 主要是指在sqlplus中,其他类似toad/plsql 没有测试,但是本人感觉可以 只要字符集一致,就不会出现乱码这种问题 本人测试环境:win7 64bit、oracle11g 32bit client、oracle服务器端:oracle 10.2.0.1.0; www.2cto.com 1.查看服务端字符集 第一种方法:select userenv('language') from dual 第二种方法:select * from NLS_DATABASE_PARAMETERS 假设 查询出的 服务端字符集 为 AMERICAN_AMERICA.US7ASCII 2.设置客户端字符集 第一种方法:注册表 改法:regedit ->HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->KEY_OraClient11g_home1->NLS_LANG 需要把NLS_LANG的键值备份(以防出错修改回来) 备份后 在修改为 AMERICAN_AMERICA.US7ASCII( 与数据库一致的字符集) www.2cto.com 适用于大多数情况。 第二种方法:修改环境变量 我的电脑->右键->属性-》高级系统-》高级->环境变量-》新建用户变量 新建用户变量 变量名:NLS_LANG 变量值:AMSERICAN_AMERICA.US7ASCII(与数据库查询的一一致就好) 适用于多次安装把注册表的oracle节点的键值对删除,对于没有删除注册表的没有测试,建议使用第一种。如果有人测试可以,建议共享出来。 作者 yylp521 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|