合肥在线网_专业打造合肥市网民最喜欢的企业资讯平台
您当前的位置 : 合肥在线网  >  企业
PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法!
2021-03-04 04:33:10 来源:互联网 阅读:-

概述

在用PLSQL登录oracle数据库时可能遇到报错如下:

数据库字符集(ZHS16GBK)和客户端字符集(2%)是不同的,字符集转化可能会造成不可预期的后果 不管错误信息中你的数据库字符集是什么,都是由于数据库服务端和你的客户端字符集不统一造成的。


NLS_LANG参数

影响Oracle数据库字符集最重要的参数是NLS_LANG参数。

它的格式如下: NLS_LANG = language_territory.charset

它有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。

其中:

1. Language: 指定服务器消息的语言, 影响提示信息是中文还是英文 
2. Territory: 指定服务器的日期和数字格式,
3. Charset: 指定字符集。

我电脑是:AMERICAN_AMERICA.ZHS16GBK

可以通过以下方法解决:

1. 查询数据库服务端的字符集

select * from nls_database_parameters 可以分别查出字符集各组成部分的值

PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法

2、服务器端结果: AMERICAN_AMERICA.ZHS16GBK

或者用 select userenv(‘language’) from dual 可以整体查出。

PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法

也可以用 select * from nls_instance_parameters 查看你客户端的字符集

PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法

3、修改客户端的字符集

客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。

如果不一致,就得修改客户端的字符集,修改为同server端相同的字符集。

在这里我直接新增环境变量NLS_LANG,设置为AMERICAN_AMERICA.ZHS16GBK

PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法

---查询sql,中文已经不乱码了。

PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法


后面会分享更多关于运维DBA方面的内容,感兴趣的朋友可以关注下!!

PL/SQL中文乱码解决——数据库字符集和客户端字符集不同的解决办法

推荐阅读:兰州在线

频道推荐
  • 中国制造是否真的“低价误国”?
    中国制造是否真的“低价误国”?

    自2010年成立以来,小米以高性价比和互联网模式切入手机市场,短短四五年时间即成为全球手机出货头部厂商。但在迅速崛起同时,小米的发展模式遭受不少质疑。曾有观点认...

    2019-12-24
  • SSD价格:开始失控了
    SSD价格:开始失控了

    熊市了快两年,存储厂商们干预市场的情绪有些按捺不住。消息称,NAND Flash存储芯片的合约价将在明年一季度上涨10%~15%,这可能会反应到具体的SSD、U...

    2019-12-24
  • 谷歌这升级的味道,简直跟苹果毫无差别
    谷歌这升级的味道,简直跟苹果毫无差别

    前几个月安卓 10 刚推送那会儿,机哥就给大家介绍过这个最新版的系统。(左:小横条 右:返回桌面手势)由于 Pixel 4 本身,就和今年刚用上浴霸摄像头的 i...

    2019-12-24
  • AI芯片动荡变局:高通华为海思神仙打架,中国超美国成为最大市场
    AI芯片动荡变局:高通华为海思神仙打架,中国

    智东西(公众号:zhidxcom)文 | 心缘上世纪80年代,英特尔曾身陷风雨飘摇的境地。令人生畏的日企在存储芯片领域势如破竹,将英特尔等美国半导体公司逼至越投...

    2019-12-24
  • “失联”10天后罗永浩再次回归,重操旧业教英语?
    “失联”10天后罗永浩再次回归,重操旧业教英

    前言:刚刚,老罗终于发布了一则新动态,这让不少网友都为止兴奋不已,大家都十分好奇老罗这段时间在忙什么。此外,最引人注目的还是老罗发布的这个动态的内容,是一个英语...

    2019-12-24
  • 你今年买「苹果」了吗?
    你今年买「苹果」了吗?

    异彩纷呈的 2019 年里,无论是从数量还是质量来看,苹果都交出了一份还不错的「硬件成绩单」。论数量,苹果今年的产品发布节奏比往年更频繁,从 2019 年 1 ...

    2019-12-24