PL\SQL 查询中文乱码

1 select * from v$nls_parameters 
查询nls的参数,获得数据库服务器端的字符编码

    PARAMETER VALUE 

   [color=red]1 NLS_LANGUAGE AMERICAN [/color]

   2 NLS_TERRITORY AMERICA 

   3 NLS_CURRENCY $ 

   4 NLS_ISO_CURRENCY AMERICA 

   5 NLS_NUMERIC_CHARACTERS ., 

   6 NLS_CALENDAR GREGORIAN 

   7 NLS_DATE_FORMAT DD-MON-RR 

   8 NLS_DATE_LANGUAGE AMERICAN 

   9 NLS_CHARACTERSET US7ASCII 

   10 NLS_SORT BINARY 

   11 NLS_TIME_FORMAT HH.MI.SSXFF AM 

   12 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM 

   13 NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR 

   14 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR 

   15 NLS_DUAL_CURRENCY $ 

   16 NLS_NCHAR_CHARACTERSET AL16UTF16 

   17 NLS_COMP BINARY 

   18 NLS_LENGTH_SEMANTICS BYTE 

   19 NLS_NCHAR_CONV_EXCP FALSE 

 

2 打开 regedit,找到 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 
设置NLS_LANG=AMERICAN就可以了

 

   ps:如果想转换为UTF8字符集,可以赋予“NLS_LANG”为 “AMERICAN_AMERICA.UTF8”,然后重新启动 pl/sql 

 

 解决途径:

  1.注册表:

    1).设置系统环境变量

变量名:NLS_LANG
变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
 
2).修改注册表
regedit->hkey_local_machine->software->oracle->home
数值名称:NLS_LANG
数值数据:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
如果有的话就不用新建了
 
3) .重启pl/sql
 
2.系统环境变量中,添加key:" NLS_LANG",value=" AMERICAN_AMERICA.UTF8 "

    

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值