plsql插入oracle数据中文乱码问题怎么处理

IT 文章4年前 (2022)发布 小编
0 0 0

最近潘老师在使用plsql工具向oracle数据库插入数据时,出现了中文乱码问题,那么我们应该怎么处理这个问题呢?其实通过一个设置就能解决,我们一起来看下解决方案吧,而且亲测有效!

一、问题描述

问题很简单,也很明显,就是只要是中文记录在插入oracle时出现类似如下图的乱码情况:
plsql插入oracle数据中文乱码问题怎么处理

二、解决方案

plsql插入oracle数据中文乱码问题处理起来其实很简单,因为乱码问题一般都是由于编码不一致导致的,我们只需如下几步即可解决:

ad

程序员导航

优网导航旗下整合全网优质开发资源,一站式IT编程学习与工具大全网站

第1步:查服务端编码

首先,使用如下SQL查看服务器端编码

select userenv('language') from dual;

潘老师实际查到服务器端的编码为:AMERICAN_AMERICA.AL32UTF8,具体如下图:
plsql插入oracle数据中文乱码问题怎么处理

第2步:查客户端编码

使用如下SQL查询PLSQL客户端使用的编码

select * from V$NLS_PARAMETERS

查看第⼀⾏中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中的编码值是否和第1步得到的值⼀样。潘老师的查询如下图:
plsql插入oracle数据中文乱码问题怎么处理
显然,我们发现这个编码和第1步的编码不一致,这就是客户端编码和服务器端编码不一致,导致插⼊中⽂乱码问题的根本原因。

ad

AI 工具导航

优网导航旗下AI工具导航,精选全球千款优质 AI 工具集

第3步:配置环境变量

接下来,我们只需新增如下环境变量即可,具体如下:
依次打开:右键此电脑->属性->⾼级系统设置->环境变量->新建

然后设置变量名:NLS_LANG,变量值:第1步查到的服务器端编码值,潘老师这里是AMERICAN_AMERICA.AL32UTF8,如下图:
plsql插入oracle数据中文乱码问题怎么处理

第4步:重启plsql

最后,我们必须要重重启PLSQL客户端,然后再去插⼊数据,发现中文乱码问题就解决了。

总结

以上就是plsql客户端插入oracle数据出现中文乱码问题该怎么处理的解决方案,是不是很容易!

© 版权声明

相关文章

暂无评论

暂无评论...