Oracle数据库 insert 插入数据 显示问号乱码的解决办法
阅读原文时间:2023年07月08日阅读:1

插入的中文数据 显示成问号(乱码),其他语言如老挝文、柬文等都一样。

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

第1步:查服务端编码

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

  select userenv('language') from dual;

查到服务器端的编码为:SIMPLIFIED CHINESE_CHINA.AL32UTF8,具体如下图:

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

  select * from V$NLS_PARAMETERS

查看第⼀⾏中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中的编码值是否和第1步得到的值⼀样。查询如下图:

显然,我们发现这个编码和第1步的编码不一致,这就是服务器端编码和客户端编码不一致,从而导致乱码问题的根本原因。

第3步:配置环境变量

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

然后设置变量名:NLS_LANG,变量值:第1步查到的服务器端编码值,如下图:

第4步:重启plsql

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

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