plsql里insert进去的中文字符

plsql里insert进去的中文字符,在服务端select * from 表名; 时显示乱码的问题

[root@ ~]# echo $LANG
zh_CN.utf8

系统中的utf8字符集

[oracle@~]$ echo $NLS_LANG
AMERICAN_AMERICA.UTF8

oracle服务端的字符集

 

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
--------------------------------------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK

这个是sqlplus里显示的字符集

好了,问题在这里,我们要的是用眼可以看到的中文字符不是乱码,所以只要保证NLS_LANG的值 是UTF8字符集就可以了

如果 是进行数据库里的表导出到其它服务器时产生的乱码 问题 则要保证服务端和客户端或者服务端和目的服务端的都是相同字符集就可以了,比如这里的AMERICAN_AMERICA.ZHS16GBK (好像是oracle默认的)

备注: AMERICAN_AMERICA.ZHS16GBK   //AMERICAN(是语言).AMERICA(是相关地域的一些数字日期的格式).ZHS16GBK(这个才是字符集)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值