oracle数据乱码解决办法

问题描述

  使用PLSQL插入中文时,数据出现乱码了

在这里插入图片描述

原因分析

PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码.

解决办法

  查看服务器端编码

select userenv('language') from dual;

在这里插入图片描述
查询的实际结果是:AMERICAN_AMERICA.ZHS16GBK

   产看V$NLS_PARAMETERS项中为NLS_LANGUAGE

select * from V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_LANGUAGE

在这里插入图片描述
我的是AMERICAN 与第一步的AMERICAN_AMERICA.ZHS16GBK不一致,需要配置环境变量

  PLSQL客户端电脑设置环境变量

计算机->属性->高级系统设置->环境变量->新建
设置变量名:NLS_LANG,变量值:第1步查到的值, 我的是 AMERICAN_AMERICA.ZHS16GBK
在这里插入图片描述

  重新启动PLSQL

在这里插入图片描述
显示正常咯

猜你喜欢

转载自blog.csdn.net/slb190623/article/details/129867591